0001558370-20-005056.txt : 20200505 0001558370-20-005056.hdr.sgml : 20200505 20200504175324 ACCESSION NUMBER: 0001558370-20-005056 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 81 CONFORMED PERIOD OF REPORT: 20200331 FILED AS OF DATE: 20200505 DATE AS OF CHANGE: 20200504 FILER: COMPANY DATA: COMPANY CONFORMED NAME: Primoris Services Corp CENTRAL INDEX KEY: 0001361538 STANDARD INDUSTRIAL CLASSIFICATION: WATER, SEWER, PIPELINE, COMM AND POWER LINE CONSTRUCTION [1623] IRS NUMBER: 204743916 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-34145 FILM NUMBER: 20846134 BUSINESS ADDRESS: STREET 1: 2300 N. FIELD STREET, SUITE 1900 CITY: DALLAS STATE: TX ZIP: 75201 BUSINESS PHONE: 214-740-5600 MAIL ADDRESS: STREET 1: 2300 N. FIELD STREET, SUITE 1900 CITY: DALLAS STATE: TX ZIP: 75201 FORMER COMPANY: FORMER CONFORMED NAME: Primoris Services CORP DATE OF NAME CHANGE: 20080821 FORMER COMPANY: FORMER CONFORMED NAME: Rhapsody Acquisition Corp. DATE OF NAME CHANGE: 20060503 10-Q 1 prim-20200504x10q.htm 10-Q
0001361538--12-312020Q1false00004866513848254575P12Mus-gaap:AccruedLiabilitiesCurrentus-gaap:OperatingLeaseLiabilityNoncurrent00013615382020-02-290001361538us-gaap:CommonStockMember2020-01-012020-03-310001361538prim:EquityIncentivePlan2013Member2020-01-012020-03-310001361538us-gaap:CommonStockMember2019-01-012019-03-310001361538prim:EquityIncentivePlan2013Member2019-01-012019-03-310001361538us-gaap:RetainedEarningsMember2020-03-310001361538us-gaap:NoncontrollingInterestMember2020-03-310001361538us-gaap:AdditionalPaidInCapitalMember2020-03-310001361538us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-03-310001361538us-gaap:RetainedEarningsMember2019-12-310001361538us-gaap:NoncontrollingInterestMember2019-12-310001361538us-gaap:AdditionalPaidInCapitalMember2019-12-310001361538us-gaap:AccumulatedOtherComprehensiveIncomeMember2019-12-310001361538us-gaap:RetainedEarningsMember2019-03-310001361538us-gaap:NoncontrollingInterestMember2019-03-310001361538us-gaap:AdditionalPaidInCapitalMember2019-03-310001361538us-gaap:AccumulatedOtherComprehensiveIncomeMember2019-03-310001361538us-gaap:RetainedEarningsMember2018-12-310001361538us-gaap:NoncontrollingInterestMember2018-12-310001361538us-gaap:AdditionalPaidInCapitalMember2018-12-310001361538us-gaap:AccumulatedOtherComprehensiveIncomeMember2018-12-310001361538us-gaap:CommonStockMember2020-03-310001361538us-gaap:CommonStockMember2019-12-310001361538us-gaap:CommonStockMember2019-03-310001361538us-gaap:CommonStockMember2018-12-310001361538srt:ExecutiveOfficerMemberus-gaap:RestrictedStockUnitsRSUMemberprim:EquityIncentivePlan2013Member2013-05-012019-09-3000013615382020-04-012020-03-310001361538us-gaap:FixedPriceContractMemberprim:UtilityTransmissionAndDistributionMember2020-01-012020-03-310001361538us-gaap:FixedPriceContractMemberprim:UAndDSegmentMember2020-01-012020-03-310001361538us-gaap:FixedPriceContractMemberprim:PIAndESegmentMember2020-01-012020-03-310001361538us-gaap:FixedPriceContractMemberprim:PAndUSegmentMember2020-01-012020-03-310001361538us-gaap:FixedPriceContractMemberprim:CivilSegmentMember2020-01-012020-03-310001361538prim:UnitPriceContractsMemberprim:UtilityTransmissionAndDistributionMember2020-01-012020-03-310001361538prim:UnitPriceContractsMemberprim:UAndDSegmentMember2020-01-012020-03-310001361538prim:UnitPriceContractsMemberprim:PIAndESegmentMember2020-01-012020-03-310001361538prim:UnitPriceContractsMemberprim:PAndUSegmentMember2020-01-012020-03-310001361538prim:UnitPriceContractsMemberprim:CivilSegmentMember2020-01-012020-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:UtilityTransmissionAndDistributionMember2020-01-012020-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:UAndDSegmentMember2020-01-012020-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:PIAndESegmentMember2020-01-012020-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:PAndUSegmentMember2020-01-012020-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:CivilSegmentMember2020-01-012020-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:UtilityTransmissionAndDistributionMember2020-01-012020-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:UAndDSegmentMember2020-01-012020-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:PIAndESegmentMember2020-01-012020-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:PAndUSegmentMember2020-01-012020-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:CivilSegmentMember2020-01-012020-03-310001361538prim:CostReimbursableContractsMemberprim:UtilityTransmissionAndDistributionMember2020-01-012020-03-310001361538prim:CostReimbursableContractsMemberprim:UAndDSegmentMember2020-01-012020-03-310001361538prim:CostReimbursableContractsMemberprim:PIAndESegmentMember2020-01-012020-03-310001361538prim:CostReimbursableContractsMemberprim:PAndUSegmentMember2020-01-012020-03-310001361538prim:CostReimbursableContractsMemberprim:CivilSegmentMember2020-01-012020-03-310001361538us-gaap:FixedPriceContractMember2020-01-012020-03-310001361538prim:UnitPriceContractsMember2020-01-012020-03-310001361538prim:NonMasterServiceAgreementCustomersMember2020-01-012020-03-310001361538prim:MasterServiceAgreementCustomersMember2020-01-012020-03-310001361538prim:CostReimbursableContractsMember2020-01-012020-03-310001361538us-gaap:FixedPriceContractMemberprim:UtilityTransmissionAndDistributionMember2019-01-012019-03-310001361538us-gaap:FixedPriceContractMemberprim:UAndDSegmentMember2019-01-012019-03-310001361538us-gaap:FixedPriceContractMemberprim:PIAndESegmentMember2019-01-012019-03-310001361538us-gaap:FixedPriceContractMemberprim:PAndUSegmentMember2019-01-012019-03-310001361538us-gaap:FixedPriceContractMemberprim:CivilSegmentMember2019-01-012019-03-310001361538prim:UnitPriceContractsMemberprim:UtilityTransmissionAndDistributionMember2019-01-012019-03-310001361538prim:UnitPriceContractsMemberprim:UAndDSegmentMember2019-01-012019-03-310001361538prim:UnitPriceContractsMemberprim:PIAndESegmentMember2019-01-012019-03-310001361538prim:UnitPriceContractsMemberprim:PAndUSegmentMember2019-01-012019-03-310001361538prim:UnitPriceContractsMemberprim:CivilSegmentMember2019-01-012019-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:UtilityTransmissionAndDistributionMember2019-01-012019-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:UAndDSegmentMember2019-01-012019-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:PIAndESegmentMember2019-01-012019-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:PAndUSegmentMember2019-01-012019-03-310001361538prim:NonMasterServiceAgreementCustomersMemberprim:CivilSegmentMember2019-01-012019-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:UtilityTransmissionAndDistributionMember2019-01-012019-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:UAndDSegmentMember2019-01-012019-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:PIAndESegmentMember2019-01-012019-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:PAndUSegmentMember2019-01-012019-03-310001361538prim:MasterServiceAgreementCustomersMemberprim:CivilSegmentMember2019-01-012019-03-310001361538prim:CostReimbursableContractsMemberprim:UtilityTransmissionAndDistributionMember2019-01-012019-03-310001361538prim:CostReimbursableContractsMemberprim:UAndDSegmentMember2019-01-012019-03-310001361538prim:CostReimbursableContractsMemberprim:PIAndESegmentMember2019-01-012019-03-310001361538prim:CostReimbursableContractsMemberprim:PAndUSegmentMember2019-01-012019-03-310001361538prim:CostReimbursableContractsMemberprim:CivilSegmentMember2019-01-012019-03-310001361538us-gaap:FixedPriceContractMember2019-01-012019-03-310001361538prim:UnitPriceContractsMember2019-01-012019-03-310001361538prim:NonMasterServiceAgreementCustomersMember2019-01-012019-03-310001361538prim:MasterServiceAgreementCustomersMember2019-01-012019-03-310001361538prim:CostReimbursableContractsMember2019-01-012019-03-310001361538us-gaap:NoncontrollingInterestMember2020-01-012020-03-310001361538us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-01-012020-03-310001361538us-gaap:AccumulatedOtherComprehensiveIncomeMember2019-01-012019-03-310001361538prim:CarlsbadConstructorsJointVentureMember2020-01-012020-03-310001361538prim:CarlsbadConstructorsJointVentureMember2019-01-012019-03-310001361538prim:CarlsbadConstructorsJointVentureMember2020-03-310001361538us-gaap:NoncontrollingInterestMember2019-01-012019-03-310001361538us-gaap:MortgagesMember2020-03-310001361538us-gaap:LoansPayableMember2020-03-310001361538us-gaap:MortgagesMember2019-12-310001361538us-gaap:LoansPayableMember2019-12-310001361538prim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember2020-03-310001361538us-gaap:LoansPayableMember2020-03-310001361538prim:CreditFacilityWithCanadianBankMember2020-03-310001361538prim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMemberus-gaap:RevolvingCreditFacilityMember2020-03-310001361538prim:CanadianCreditFacilityCibcMember2020-03-310001361538prim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMemberus-gaap:LetterOfCreditMember2020-03-310001361538prim:CreditFacilityWithCanadianBankMemberus-gaap:LetterOfCreditMember2020-03-310001361538srt:MaximumMember2020-03-310001361538prim:UtilityTransmissionAndDistributionMember2020-03-310001361538prim:UAndDSegmentMember2020-03-310001361538prim:PIAndESegmentMember2020-03-310001361538prim:PAndUSegmentMember2020-03-310001361538prim:CivilSegmentMember2020-03-310001361538prim:UtilityTransmissionAndDistributionMember2019-03-310001361538prim:UAndDSegmentMember2019-03-310001361538prim:PIAndESegmentMember2019-03-310001361538prim:PAndUSegmentMember2019-03-310001361538prim:CivilSegmentMember2019-03-310001361538us-gaap:TradeNamesMember2020-01-012020-03-310001361538us-gaap:OtherIntangibleAssetsMember2020-01-012020-03-310001361538us-gaap:NoncompeteAgreementsMember2020-01-012020-03-310001361538us-gaap:CustomerRelationshipsMember2020-01-012020-03-310001361538us-gaap:TradeNamesMember2020-03-310001361538us-gaap:OtherIntangibleAssetsMember2020-03-310001361538us-gaap:NoncompeteAgreementsMember2020-03-310001361538us-gaap:CustomerRelationshipsMember2020-03-310001361538us-gaap:TradeNamesMember2019-12-310001361538us-gaap:OtherIntangibleAssetsMember2019-12-310001361538us-gaap:NoncompeteAgreementsMember2019-12-310001361538us-gaap:CustomerRelationshipsMember2019-12-310001361538us-gaap:InterestRateSwapMemberus-gaap:InterestExpenseMember2020-01-012020-03-310001361538us-gaap:InterestRateSwapMemberus-gaap:InterestExpenseMember2019-01-012019-03-310001361538us-gaap:InterestRateSwapMember2020-03-310001361538us-gaap:InterestRateSwapMember2019-12-310001361538us-gaap:InterestRateSwapMember2018-09-130001361538us-gaap:OtherNoncurrentLiabilitiesMemberus-gaap:InterestRateSwapMember2020-03-310001361538us-gaap:OtherNoncurrentLiabilitiesMemberus-gaap:InterestRateSwapMember2019-12-310001361538us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2020-03-310001361538us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2019-12-310001361538prim:CommercialEquipmentFinancingDueJune2018ToAugust2022Member2020-03-310001361538prim:CommercialEquipmentFinancingDueJune2018ToAugust2022Member2019-12-310001361538us-gaap:SubsequentEventMember2020-05-012020-05-0100013615382020-02-222020-02-2200013615382019-10-312019-10-3100013615382019-08-022019-08-0200013615382019-05-032019-05-0300013615382019-02-262019-02-2600013615382018-11-022018-11-0200013615382019-03-3100013615382018-12-310001361538us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2020-03-310001361538us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2019-12-310001361538prim:CarlsbadConstructorsJointVentureMember2020-03-310001361538us-gaap:RestrictedStockUnitsRSUMember2020-01-012020-03-310001361538prim:EquityIncentivePlan2013Member2020-01-012020-03-310001361538us-gaap:RestrictedStockUnitsRSUMemberprim:EquityIncentivePlan2013Member2020-01-012020-03-310001361538us-gaap:RestrictedStockUnitsRSUMemberprim:EquityIncentivePlan2013Member2019-01-012019-03-310001361538prim:CarlsbadConstructorsJointVentureMember2019-12-310001361538prim:NonUnitedStatesMember2019-01-012019-12-310001361538us-gaap:RestrictedStockUnitsRSUMemberprim:EquityIncentivePlan2013Memberus-gaap:ShareBasedCompensationAwardTrancheTwoMember2020-03-310001361538us-gaap:RestrictedStockUnitsRSUMemberprim:EquityIncentivePlan2013Memberus-gaap:ShareBasedCompensationAwardTrancheThreeMember2020-03-310001361538us-gaap:RestrictedStockUnitsRSUMemberprim:EquityIncentivePlan2013Memberus-gaap:ShareBasedCompensationAwardTrancheOneMember2020-03-310001361538us-gaap:RestrictedStockUnitsRSUMemberprim:EquityIncentivePlan2013Memberprim:ShareBasedCompensationAwardTrancheFourMember2020-03-3100013615382020-04-012020-01-012020-03-310001361538prim:NonUnitedStatesMember2020-01-012020-03-310001361538prim:NonUnitedStatesMember2019-01-012019-03-310001361538prim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember2020-01-012020-03-310001361538prim:NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMembersrt:MaximumMemberprim:JamesConstructionGroupLLCMember2015-02-252015-02-250001361538prim:NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMemberprim:JamesConstructionGroupLLCMember2020-01-012020-03-310001361538prim:NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMemberprim:JamesConstructionGroupLLCMember2015-02-252015-02-250001361538prim:NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMemberprim:JamesConstructionGroupLLCMember2020-03-310001361538prim:UtilityTransmissionAndDistributionMember2020-01-012020-03-310001361538prim:UAndDSegmentMember2020-01-012020-03-310001361538prim:PIAndESegmentMember2020-01-012020-03-310001361538prim:PAndUSegmentMember2020-01-012020-03-310001361538prim:CivilSegmentMember2020-01-012020-03-310001361538prim:UtilityTransmissionAndDistributionMember2019-01-012019-03-310001361538prim:UAndDSegmentMember2019-01-012019-03-310001361538prim:PIAndESegmentMember2019-01-012019-03-310001361538prim:PAndUSegmentMember2019-01-012019-03-310001361538prim:CivilSegmentMember2019-01-012019-03-3100013615382019-01-012019-03-310001361538us-gaap:RetainedEarningsMember2020-01-012020-03-310001361538us-gaap:AdditionalPaidInCapitalMember2020-01-012020-03-310001361538us-gaap:RetainedEarningsMember2019-01-012019-03-310001361538us-gaap:AdditionalPaidInCapitalMember2019-01-012019-03-310001361538prim:LongTermRetentionPlanMember2020-01-012020-03-310001361538prim:LongTermRetentionPlanMember2019-01-012019-03-310001361538srt:MinimumMemberprim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember2020-01-012020-03-3100013615382020-03-3100013615382019-12-310001361538us-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMember2020-03-310001361538us-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMember2019-12-3100013615382019-06-300001361538prim:TopTenCustomersMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2020-01-012020-03-310001361538prim:TopTenCustomersMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2019-01-012019-03-310001361538prim:PipelineCustomerMemberus-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2020-01-012020-03-310001361538us-gaap:SuretyBondMember2020-03-310001361538us-gaap:SuretyBondMember2019-12-310001361538us-gaap:InterestRateSwapMember2018-09-132018-09-130001361538us-gaap:RestrictedStockUnitsRSUMemberprim:EquityIncentivePlan2013Member2020-03-310001361538prim:EquityIncentivePlan2013Member2020-03-3100013615382020-04-2700013615382020-01-012020-03-31xbrli:sharesxbrli:pureiso4217:USDprim:itemprim:customerprim:instrumentiso4217:USDxbrli:sharesiso4217:CADprim:segment

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, D.C. 20549

FORM 10-Q

(Mark One)

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

For the quarterly period ended March 31, 2020

OR

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

For the transition period from                    to                      .

Commission file number 001-34145

Primoris Services Corporation

(Exact name of registrant as specified in its charter)

Delaware

    

20-4743916

(State or Other Jurisdiction of

(I.R.S. Employer

Incorporation or Organization)

Identification No.)

2300 N. Field Street, Suite 1900

Dallas, Texas

75201

(Address of Principal Executive Offices)

(Zip Code)

Registrant’s telephone number, including area code: (214740-5600

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

Title of each class

Trading symbol(s)

Name of each exchange on which registered

Common Stock, $0.0001 par value

PRIM

The Nasdaq Stock Market LLC

Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.  Yes   No 

Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (Section 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).  Yes   No 

Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer”, “accelerated filer”, “smaller reporting company”, and “emerging growth company” in Rule 12b-2 of the Exchange Act.:

Large accelerated filer  

    

Accelerated filer  

Non-accelerated filer  

Smaller reporting company  

Emerging growth company  

If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.

Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).  Yes    No 

At April 27, 2020, 48,260,436 shares of the registrant’s common stock, par value $0.0001 per share, were outstanding.

PRIMORIS SERVICES CORPORATION

INDEX

    

Page No.

Part I. Financial Information

Item 1. Financial Statements:

—Condensed Consolidated Balance Sheets at March 31, 2020 and December 31, 2019 (Unaudited)

3

—Condensed Consolidated Statements of Operations for the three months ended March 31, 2020 and 2019 (Unaudited)

4

—Condensed Consolidated Statements of Comprehensive (Loss) Income for the three months ended March 31, 2020 and 2019 (Unaudited)

5

—Condensed Consolidated Statements of Stockholders’ Equity for the three months ended March 31, 2020 and 2019 (Unaudited)

6

—Condensed Consolidated Statements of Cash Flows for the three months ended March 31, 2020 and 2019 (Unaudited)

7

—Notes to Condensed Consolidated Financial Statements (Unaudited)

9

Item 2. Management’s Discussion and Analysis of Financial Condition and Results of Operations

24

Item 3. Quantitative and Qualitative Disclosures About Market Risk

35

Item 4. Controls and Procedures

35

Part II. Other Information

Item 1. Legal Proceedings

36

Item 1A. Risk Factors

36

Item 2. Unregistered Sales of Equity Securities and Use of Proceeds

37

Item 6. Exhibits

37

Signatures

38

2

PART I.  FINANCIAL INFORMATION

ITEM 1.  FINANCIAL STATEMENTS

PRIMORIS SERVICES CORPORATION

CONDENSED CONSOLIDATED BALANCE SHEETS

(In Thousands, Except Share Amounts)

(Unaudited)

March 31, 

December 31, 

 

    

2020

    

2019

 

ASSETS

Current assets:

Cash and cash equivalents

$

93,474

$

120,286

Accounts receivable, net

 

416,412

 

404,911

Contract assets

 

359,370

 

344,806

Prepaid expenses and other current assets

 

47,409

 

42,704

Total current assets

 

916,665

 

912,707

Property and equipment, net

 

363,993

 

375,888

Operating lease assets

253,117

242,385

Deferred tax assets

1,090

1,100

Intangible assets, net

 

67,460

 

69,829

Goodwill

 

215,103

 

215,103

Other long-term assets

 

17,675

 

13,453

Total assets

$

1,835,103

$

1,830,465

LIABILITIES AND STOCKHOLDERS’ EQUITY

Current liabilities:

Accounts payable

$

258,962

$

235,972

Contract liabilities

 

176,847

 

192,397

Accrued liabilities

 

192,648

 

183,501

Dividends payable

 

2,895

 

2,919

Current portion of long-term debt

 

52,430

 

55,659

Total current liabilities

 

683,782

 

670,448

Long-term debt, net of current portion

 

290,749

 

295,642

Noncurrent operating lease liabilities, net of current portion

176,546

171,225

Deferred tax liabilities

 

17,820

 

17,819

Other long-term liabilities

 

50,762

 

45,801

Total liabilities

 

1,219,659

 

1,200,935

Commitments and contingencies (See Note 16)

Stockholders’ equity

Common stock—$.0001 par value; 90,000,000 shares authorized; 48,254,575 and 48,665,138 issued and outstanding at March 31, 2020 and December 31, 2019, respectively

 

5

 

5

Additional paid-in capital

 

91,414

 

97,130

Retained earnings

 

524,655

 

531,291

Accumulated other comprehensive (loss) income

(1,661)

76

Noncontrolling interest

 

1,031

 

1,028

Total stockholders’ equity

 

615,444

 

629,530

Total liabilities and stockholders’ equity

$

1,835,103

$

1,830,465

See Accompanying Notes to Condensed Consolidated Financial Statements

3

PRIMORIS SERVICES CORPORATION

CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS

(In Thousands, Except Per Share Amounts)

(Unaudited)

Three Months Ended

March 31, 

2020

    

2019

 

Revenue

$

743,243

$

661,558

Cost of revenue

 

695,433

 

609,098

Gross profit

 

47,810

 

52,460

Selling, general and administrative expenses

 

44,388

 

42,931

Operating income

 

3,422

 

9,529

Other income (expense):

Foreign exchange gain (loss)

 

136

 

(185)

Other income (expense), net

 

12

 

(370)

Interest income

 

281

 

349

Interest expense

 

(9,112)

 

(5,592)

(Loss) income before provision for income taxes

 

(5,261)

 

3,731

Benefit (provision) for income taxes

 

1,527

 

(795)

Net (loss) income

(3,734)

2,936

Less net income attributable to noncontrolling interests

(3)

(989)

Net (loss) income attributable to Primoris

$

(3,737)

$

1,947

Dividends per common share

$

0.06

$

0.06

(Loss) earnings per share:

Basic

$

(0.08)

$

0.04

Diluted

$

(0.08)

$

0.04

Weighted average common shares outstanding:

Basic

 

48,588

 

50,770

Diluted

 

48,588

 

51,188

See Accompanying Notes to Condensed Consolidated Financial Statements

4

PRIMORIS SERVICES CORPORATION

CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE (LOSS) INCOME

(In Thousands)

(Unaudited)

Three Months Ended

March 31, 

2020

    

2019

 

Net (loss) income

$

(3,734)

$

2,936

Other comprehensive (loss) income, net of tax:

Foreign currency translation adjustments

(1,737)

374

Comprehensive (loss) income

(5,471)

3,310

Less net income attributable to noncontrolling interests

(3)

(989)

Comprehensive (loss) income attributable to Primoris

$

(5,474)

$

2,321

See Accompanying Notes to Condensed Consolidated Financial Statements

5

PRIMORIS SERVICES CORPORATION

CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY

(In Thousands, Except Share and Per Share Amounts)

(Unaudited)

Accumulated

Additional

Other

Non

Total

 

Common Stock

Paid-in

Retained

Comprehensive

Controlling

Stockholders’

 

    

Shares

    

Amount

    

Capital

    

Earnings

0

Loss

    

Interest

    

Equity

 

Balance, December 31, 2019

 

48,665,138

$

5

$

97,130

$

531,291

$

76

$

1,028

$

629,530

Net (loss) income

 

 

 

 

(3,737)

 

3

 

(3,734)

Foreign currency translation adjustments, net of tax

(1,737)

(1,737)

Issuance of shares to employees and directors

51,268

1,174

1,174

Amortization of Restricted Stock Units

499

499

Dividend equivalent Units accrued - Restricted Stock Units

4

(4)

Repurchase of stock

 

(461,831)

 

 

(7,393)

 

 

 

(7,393)

Dividends declared ($0.06 per share)

 

 

 

 

(2,895)

 

 

(2,895)

Balance, March 31, 2020

 

48,254,575

$

5

$

91,414

$

524,655

$

(1,661)

$

1,031

$

615,444

Accumulated

Additional

Other

Non

Total

 

Common Stock

Paid-in

Retained

Comprehensive

Controlling

Stockholders’

 

    

Shares

    

Amount

    

Capital

    

Earnings

0

Loss

    

Interest

0

Equity

 

Balance, December 31, 2018

 

50,715,518

$

5

$

144,048

$

461,075

$

(908)

$

2,763

$

606,983

Net income

 

 

 

 

1,947

 

 

989

 

2,936

Foreign currency translation adjustments, net of tax

374

374

Issuance of shares to employees and directors

 

127,384

 

 

2,661

 

 

 

 

2,661

Amortization of Restricted Stock Units

487

487

Dividend equivalent Units accrued - Restricted Stock Units

12

(12)

Distribution of noncontrolling entities

(5)

(5)

Dividends declared ($0.06 per share)

 

 

 

 

(3,051)

 

 

 

(3,051)

Balance, March 31, 2019

 

50,842,902

$

5

$

147,208

$

459,959

$

(534)

$

3,747

$

610,385

See Accompanying Notes to Condensed Consolidated Financial Statements

6

PRIMORIS SERVICES CORPORATION

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS

(In Thousands)

(Unaudited)

Three Months Ended

 

March 31, 

    

2020

    

2019

 

Cash flows from operating activities:

Net (loss) income

$

(3,734)

$

2,936

Adjustments to reconcile net (loss) income to net cash used in operating activities:

Depreciation and amortization

 

19,797

 

21,700

Stock-based compensation expense

 

499

 

487

Gain on sale of property and equipment

 

(2,311)

 

(2,217)

Unrealized loss on interest rate swap

4,970

1,447

Other non-cash items

1,821

80

Changes in assets and liabilities:

Accounts receivable

 

(13,911)

 

(24,722)

Contract assets

 

(15,682)

 

(2,328)

Other current assets

 

(4,849)

 

(2,231)

Other long-term assets

204

182

Accounts payable

 

23,934

 

(59,198)

Contract liabilities

 

(15,389)

 

2,590

Operating lease assets and liabilities, net

 

119

 

(1,447)

Accrued liabilities

 

(179)

 

(9,663)

Other long-term liabilities

 

(756)

 

288

Net cash used in operating activities

 

(5,467)

 

(72,096)

Cash flows from investing activities:

Purchase of property and equipment

 

(9,311)

 

(14,377)

Proceeds from sale of property and equipment

 

6,902

 

4,398

Net cash used in investing activities

 

(2,409)

 

(9,979)

Cash flows from financing activities:

Borrowings under revolving line of credit

40,000

Payments on revolving line of credit

 

 

(40,000)

Proceeds from issuance of long-term debt

 

6,800

 

23,105

Repayment of long-term debt

 

(14,976)

 

(17,170)

Proceeds from issuance of common stock purchased under a long-term incentive plan

 

578

 

1,804

Repurchase of common stock

 

(7,393)

 

Dividends paid

 

(2,919)

 

(3,043)

Other

(1,285)

 

(26)

Net cash (used in) provided by financing activities

 

(19,195)

 

4,670

Effect of exchange rate changes on cash and cash equivalents

259

327

Net change in cash and cash equivalents

 

(26,812)

 

(77,078)

Cash and cash equivalents at beginning of the period

 

120,286

 

151,063

Cash and cash equivalents at end of the period

$

93,474

$

73,985

See Accompanying Notes to Condensed Consolidated Financial Statements

7

PRIMORIS SERVICES CORPORATION

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Continued)

(In Thousands)

(Unaudited)

SUPPLEMENTAL DISCLOSURES OF CASH FLOW INFORMATION

Three Months Ended March 31, 

 

    

2020

    

2019

 

Cash paid for interest

$

4,061

$

4,065

Cash paid for income taxes, net of refunds received

(369)

(707)

Leased assets obtained in exchange for new operating leases

34,711

8,847

SUPPLEMENTAL DISCLOSURES OF NONCASH INVESTING AND FINANCING ACTIVITIES

Three Months Ended March 31, 

 

    

2020

    

2019

 

Dividends declared and not yet paid

$

2,895

$

3,051

See Accompanying Notes to Condensed Consolidated Financial Statements

8

PRIMORIS SERVICES CORPORATION

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

(Dollars In Thousands, Except Share and Per Share Amounts)

(Unaudited)

Note 1—Nature of Business

Organization and operations — Primoris Services Corporation is one of the leading providers of specialty contracting services operating mainly in the United States and Canada. We provide a wide range of specialty construction services, fabrication, maintenance, replacement, and engineering services to a diversified base of customers through our five segments.

We have longstanding customer relationships with major utility, refining, petrochemical, power, midstream, and engineering companies, and state departments of transportation. We provide our services to a diversified base of customers, under a range of contracting options. A substantial portion of our services are provided under Master Service Agreements (“MSA”), which are generally multi-year agreements. The remainder of our services are generated from contracts for specific construction or installation projects.

We are incorporated in the State of Delaware, and our corporate headquarters are located at 2300 N. Field Street, Suite 1900, Dallas, Texas 75201. Unless specifically noted otherwise, as used throughout these consolidated financial statements, “Primoris”, “the Company”, “we”, “our”, “us” or “its” refers to the business, operations and financial results of the Company and its wholly-owned subsidiaries.

Reportable Segments — We segregate our business into five reportable segments: the Power, Industrial and Engineering (“Power”) segment, the Pipeline and Underground (“Pipeline”) segment, the Utilities and Distribution (“Utilities”) segment, the Transmission and Distribution (“Transmission”) segment, and the Civil segment. See Note 17 – “Reportable Segments” for a brief description of the reportable segments and their operations.

The classification of revenue and gross profit for segment reporting purposes can at times require judgment on the part of management. Our segments may perform services across industries or perform joint services for customers in multiple industries. To determine reportable segment gross profit, certain allocations, including allocations of shared and indirect costs, such as facility costs, equipment costs and indirect operating expenses were made.

Joint Ventures — We own a 50% interest in the Carlsbad Power Constructors joint venture (“Carlsbad”), which engineered and constructed a gas-fired power generation facility located in Southern California, and its operations are included as part of the Power segment. As a result of determining that we are the primary beneficiary of the variable interest entity (“VIE”), the results of the Carlsbad joint venture are consolidated in our financial statements. The project was substantially complete as of December 31, 2018, and the warranty period expires in December 2020.

Financial information for the joint ventures is presented in Note 10 – “Noncontrolling Interests”.

Note 2—Basis of Presentation

Interim condensed consolidated financial statements The interim condensed consolidated financial statements for the three month period ended March 31, 2020 and 2019 have been prepared in accordance with Rule 10-01 of Regulation S-X of the Securities Exchange Act of 1934, as amended (the “Exchange Act”). As such, certain disclosures, which would substantially duplicate the disclosures contained in our Annual Report on Form 10-K, filed on February 24, 2020, which contains our audited consolidated financial statements for the year ended December 31, 2019, have been omitted.

This Form 10-Q should be read in conjunction with our most recent Annual Report on Form 10-K. The interim financial information is unaudited.  In the opinion of management, the interim information includes all adjustments (consisting of normal recurring adjustments) necessary for the fair presentation of the interim financial information. 

Customer concentration — We operate in multiple industry segments encompassing the construction of commercial, industrial and public works infrastructure assets primarily throughout the United States. Typically, the top ten customers in any one calendar year generate revenue that is approximately 50% of total revenue; however, the group that comprises the top ten customers varies from year to year. For the three months ended March 31, 2020 and 2019,

9

approximately 50.1% and 49.1%, respectively, of total revenue was generated from our top ten customers. For the three months ended March 31, 2020, one pipeline customer represented approximately 11.3% of total revenue and for the three months ended March 31, 2019 no one single customer represented greater than 10.0% of total revenue.

Note 3—Recent Accounting Pronouncements

Recently adopted accounting pronouncements

In June 2016, the FASB issued ASU 2016-13, “Financial Instruments—Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments”, which introduced an expected credit loss methodology for the measurement and recognition of credit losses on most financial assets, including trade accounts receivables. The expected credit loss methodology under ASU 2016-13 is based on historical experience, current conditions and reasonable and supportable forecasts, and replaces the probable/incurred loss model for measuring and recognizing expected losses under current GAAP. The ASU also requires disclosure of information regarding how a company developed its allowance, including changes in the factors that influenced management’s estimate of expected credit losses and the reasons for those changes. The ASU and its related clarifying updates are effective for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted. We adopted the new standard on January 1, 2020, and it did not have a material impact on our estimate of the allowance for uncollectable accounts.

In August 2018, the FASB issued ASU 2018-13, “Fair Value Measurement (Topic 820): Disclosure Framework—Changes to the Disclosure Requirements for Fair Value Measurement”, which eliminates certain disclosure requirements for recurring and nonrecurring fair value measurements. The ASU eliminates such disclosures as the amount of and reasons for transfers between Level 1 and Level 2 of the fair value hierarchy, and adds new disclosure requirements for Level 3 measurements. This ASU is effective for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted for any eliminated or modified disclosures. We adopted the new standard on January 1, 2020, and it did not have a material impact on our disclosures.

Recently issued accounting pronouncements not yet adopted

In December 2019, the FASB issued ASU No. 2019-12, “Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes”, which removes certain exceptions to the general principles in Topic 740 and also clarifies and amends existing guidance to improve consistent application. This ASU is effective for fiscal years beginning after December 15, 2020, and interim periods within those fiscal years. Depending on the amendment, adoption may be applied on the retrospective, modified retrospective, or prospective basis. We are currently evaluating the potential effects of adopting the provisions of ASU No. 2019-12.

Note 4—Fair Value Measurements

ASC Topic 820, “Fair Value Measurements and Disclosures”, defines fair value, establishes a framework for measuring fair value in GAAP and requires certain disclosures about fair value measurements. ASC Topic 820 addresses fair value GAAP for financial assets and financial liabilities that are re-measured and reported at fair value at each reporting period and for non-financial assets and liabilities that are re-measured and reported at fair value on a non-recurring basis.

In general, fair values determined by Level 1 inputs use quoted prices (unadjusted) in active markets for identical assets or liabilities. Fair values determined by Level 2 inputs use data points that are observable such as quoted prices, interest rates and yield curves. Fair values determined by Level 3 inputs are “unobservable data points” for the asset or liability and include situations where there is little, if any, market activity for the asset or liability.

10

The following table presents, for each of the fair value hierarchy levels identified under ASC Topic 820, our financial assets and liabilities that are required to be measured at fair value at March 31, 2020 and December 31, 2019 (in thousands):

Fair Value Measurements at Reporting Date

 

    

    

Significant

    

 

Quoted Prices

Other

Significant

 

in Active Markets

Observable

Unobservable

 

for Identical Assets

Inputs

Inputs

 

    

(Level 1)

    

(Level 2)

    

(Level 3)

 

Assets as of March 31, 2020:

Cash and cash equivalents

$

93,474

 

$

 

$

Contingent consideration

938

Liabilities as of March 31, 2020:

Interest rate swap

$

$

11,414

$

Assets as of December 31, 2019:

Cash and cash equivalents

$

120,286

 

$

 

$

Contingent consideration

938

Liabilities as of December 31, 2019:

Interest rate swap

$

$

6,443

$

Other financial instruments not listed in the table consist of accounts receivable, accounts payable and certain accrued liabilities. These financial instruments generally approximate fair value based on their short-term nature. The carrying value of our long-term debt approximates fair value based on comparison with current prevailing market rates for loans of similar risks and maturities.

In the second quarter of 2019, we sold certain assets that included an earnout of $2.0 million, contingent upon the buyer meeting a certain performance target. The estimated fair value of the contingent consideration on the sale date was approximately $0.9 million. We measured the fair value of the contingent consideration using the income approach, which discounts the future cash payments expected upon meeting the performance target to present value. The fair value of the contingent consideration was impacted by two unobservable inputs, management’s estimate of the probability of meeting the performance target and the estimated discount rate (a rate that approximates our cost of capital). Significant changes in either of those inputs in isolation would result in a different fair value measurement. During the first quarter of 2020, there was no change to the fair value of the contingent consideration.

The interest rate swap is measured at fair value using the income approach, which discounts the future net cash settlements expected under the derivative contracts to a present value. These valuations primarily utilize indirectly observable inputs, including contractual terms, interest rates and yield curves observable at commonly quoted intervals. See Note 9 – “Derivative Instruments” for additional information.

Note 5—Revenue

We generate revenue under a range of contracting types, including fixed-price, unit-price, time and material, and cost reimbursable plus fee contracts. A substantial portion of our revenue is derived from contracts that are fixed-price or unit-price and is recognized over time as work is completed because of the continuous transfer of control to the customer (typically using an input measure such as costs incurred to date relative to total estimated costs at completion to measure progress). For time and material and cost reimbursable plus fee contracts, revenue is recognized primarily on an input basis, based on contract costs incurred as defined within the respective contracts. Costs to obtain contracts are generally not significant and are expensed in the period incurred.

We evaluate whether two or more contracts should be combined and accounted for as one single performance obligation and whether a single contract should be accounted for as more than one performance obligation. ASC 606 defines a performance obligation as a contractual promise to transfer a distinct good or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. Our evaluation requires significant judgment and the decision to combine a group of contracts or separate a contract into multiple performance obligations could change the amount of revenue and profit

11

recorded in a given period. The majority of our contracts have a single performance obligation, as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contract and, therefore, is not distinct. However, occasionally we have contracts with multiple performance obligations. For contracts with multiple performance obligations, we allocate the contract’s transaction price to each performance obligation using the observable standalone selling price, if available, or alternatively our best estimate of the standalone selling price of each distinct performance obligation in the contract. The primary method used to estimate standalone selling price is the expected cost plus a margin approach for each performance obligation.

As of March 31, 2020, we had $2.08 billion of remaining performance obligations. We expect to recognize approximately 58% of our remaining performance obligations as revenue during the next four quarters and substantially all of the remaining balance by the first quarter of 2022.

Accounting for long-term contracts involves the use of various techniques to estimate total transaction price and costs. For long-term contracts, transaction price, estimated cost at completion and total costs incurred to date are used to calculate revenue earned. Unforeseen events and circumstances can alter the estimate of the costs and potential profit associated with a particular contract. Total estimated costs, and thus contract revenue and income, can be impacted by changes in productivity, scheduling, the unit cost of labor, subcontracts, materials and equipment. Additionally, external factors such as weather, client needs, client delays in providing permits and approvals, labor availability, governmental regulation, politics and any prevailing impacts from the pandemic caused by the coronavirus may affect the progress of a project’s completion, and thus the timing of revenue recognition. To the extent that original cost estimates are modified, estimated costs to complete increase, delivery schedules are delayed, or progress under a contract is otherwise impeded, cash flow, revenue recognition and profitability from a particular contract may be adversely affected.

The nature of our contracts gives rise to several types of variable consideration, including contract modifications (change orders and claims), liquidated damages, volume discounts, performance bonuses, incentive fees, and other terms that can either increase or decrease the transaction price. We estimate variable consideration as the most likely amount to which we expect to be entitled. We include estimated amounts in the transaction price to the extent we believe we have an enforceable right, and it is probable that a significant reversal of cumulative revenue recognized will not occur. Our estimates of variable consideration and the determination of whether to include estimated amounts in the transaction price are based largely on an assessment of our anticipated performance and all information (historical, current and forecasted) that is reasonably available to us at this time.

Contract modifications result from changes in contract specifications or requirements. We consider unapproved change orders to be contract modifications for which customers have not agreed to both scope and price. We consider claims to be contract modifications for which we seek, or will seek, to collect from customers, or others, for customer-caused changes in contract specifications or design, or other customer-related causes of unanticipated additional contract costs on which there is no agreement with customers. Claims can also be caused by non-customer-caused changes, such as rain or other weather delays. Costs associated with contract modifications are included in the estimated costs to complete the contracts and are treated as project costs when incurred. In most instances, contract modifications are for goods or services that are not distinct, and, therefore, are accounted for as part of the existing contract. The effect of a contract modification on the transaction price, and our measure of progress for the performance obligation to which it relates, is recognized as an adjustment to revenue on a cumulative catch-up basis. In some cases, settlement of contract modifications may not occur until after completion of work under the contract.

As a significant change in one or more of these estimates could affect the profitability of our contracts, we review and update our contract-related estimates regularly. We recognize adjustments in estimated profit on contracts under the cumulative catch-up method. Under this method, the cumulative impact of the profit adjustment is recognized in the period the adjustment is identified. Revenue and profit in future periods of contract performance are recognized using the adjusted estimate. In the three months ended March 31, 2020, revenue recognized from performance obligations satisfied in previous periods was $3.6 million. If at any time the estimate of contract profitability indicates an anticipated loss on a contract, the projected loss is recognized in full, including any previously recognized profit, in the period it is identified and recognized as an “accrued loss provision” which is included in “Contract liabilities” on the Condensed Consolidated Balance Sheets. For contract revenue recognized over time, the accrued loss provision is adjusted so that the gross profit for the contract remains zero in future periods.

At March 31, 2020, we had approximately $94.4 million of unapproved contract modifications included in the aggregate transaction prices. These contract modifications were in the process of being negotiated in the normal course of

12

business. Approximately $80.6 million of the contract modifications had been recognized as revenue on a cumulative catch-up basis through March 31, 2020.

In all forms of contracts, we estimate the collectability of contract amounts at the same time that we estimate project costs. If we anticipate that there may be issues associated with the collectability of the full amount calculated as the transaction price, we may reduce the amount recognized as revenue to reflect the uncertainty associated with realization of the eventual cash collection. For example, when a cost reimbursable project exceeds the client’s expected budget amount, the client frequently requests an adjustment to the final amount. Similarly, some utility clients reserve the right to audit costs for significant periods after performance of the work.

The timing of when we bill our customers is generally dependent upon agreed-upon contractual terms, milestone billings based on the completion of certain phases of the work, or when services are provided. Sometimes, billing occurs subsequent to revenue recognition, resulting in unbilled revenue, which is a contract asset. Also, we sometimes receive advances or deposits from our customers before revenue is recognized, resulting in deferred revenue, which is a contract liability.

The caption “Contract assets” in the Condensed Consolidated Balance Sheets represents the following:

unbilled revenue, which arise when revenue has been recorded but the amount will not be billed until a later date;

retainage amounts for the portion of the contract price earned by us for work performed, but held for payment by the customer as a form of security until we reach certain construction milestones; and

contract materials for certain job specific materials not yet installed, which are valued using the specific identification method relating the cost incurred to a specific project.

Contract assets consist of the following (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Unbilled revenue

$

268,282

$

251,429

Retention receivable

78,216

81,393

Contract materials (not yet installed)

 

12,872

 

11,984

$

359,370

$

344,806

Contract assets increased by $14.6 million compared to December 31, 2019 due primarily to higher unbilled revenue.

The caption “Contract liabilities” in the Condensed Consolidated Balance Sheets represents deferred revenue on billings in excess of contract revenue recognized to date, and the accrued loss provision.

Contract liabilities consist of the following (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Deferred revenue

$

171,553

$

186,081

Accrued loss provision

 

5,294

 

6,316

$

176,847

$

192,397

Contract liabilities decreased by $15.6 million compared to December 31, 2019 due primarily to lower deferred revenue.

Revenue recognized for the three months ended March 31, 2020, that was included in the contract liability balance at December 31, 2019 was approximately $97.9 million.

13

The following tables present our revenue disaggregated into various categories.

Master Service Agreements (“MSA”) and Non-MSA revenue was as follows (in thousands):

For the three months ended March 31, 2020

 

Segment

MSA

Non-MSA

Total

Power

$

37,095

159,098

196,193

Pipeline

46,732

144,791

191,523

Utilities

 

104,011

43,159

147,170

Transmission

81,774

21,010

102,784

Civil

 

796

104,777

105,573

Total

$

270,408

 

$

472,835

 

$

743,243

For the three months ended March 31, 2019

 

Segment

MSA

Non-MSA

Total

Power

$

49,195

 

$

96,188

 

$

145,383

Pipeline

21,849

112,965

134,814

Utilities

 

119,462

 

 

26,744

 

 

146,206

Transmission

101,723

16,720

118,443

Civil

 

650

 

 

116,062

 

 

116,712

Total

$

292,879

 

$

368,679

 

$

661,558

Revenue by contract type was as follows (in thousands):

For the three months ended March 31, 2020

 

Segment

Fixed-price

Unit-price

Cost reimbursable (1)

Total

Power

$

144,850

181

51,162

196,193

Pipeline

15,345

81,830

94,348

191,523

Utilities

 

24,089

80,639

42,442

147,170

Transmission

13,636

88,789

359

102,784

Civil

 

19,859

75,447

10,267

105,573

Total

$

217,779

 

$

326,886

 

$

198,578

 

$

743,243

(1)Includes time and material and cost reimbursable plus fee contracts.

For the three months ended March 31, 2019

 

Segment

Fixed-price

Unit-price

Cost reimbursable (1)

Total

Power

$

75,143

 

$

6,613

 

$

63,627

 

$

145,383

Pipeline

17,227

374

117,213

134,814

Utilities

 

22,767

 

 

67,878

 

 

55,561

 

 

146,206

Transmission

8,463

105,841

4,139

118,443

Civil

 

22,685

 

 

78,494

 

 

15,533

 

 

116,712

Total

$

146,285

 

$

259,200

 

$

256,073

 

$

661,558

(1)Includes time and material and cost reimbursable plus fee contracts.

Each of these contract types has a different risk profile. Typically, we assume more risk with fixed-price contracts. Unforeseen events and circumstances can alter the estimate of the costs and potential profit associated with a particular fixed-price contract. However, these types of contracts offer additional profits when we complete the work for less cost than originally estimated. Unit-price and cost reimbursable contracts generally subject us to lower risk. Accordingly, the associated fees are usually lower than fees earned on fixed-price contracts. Under these contracts, our profit may vary if actual costs vary significantly from the negotiated rates.

14

Note 6—Goodwill and Intangible Assets

The carrying amount of goodwill by reportable segment is as follows (in thousands):

March 31, 

December 31, 

 

Reporting Segment

    

2020

    

2019

 

Power

 

$

26,194

$

26,194

Pipeline

 

 

52,415

 

52,415

Utilities

 

 

37,312

 

37,312

Transmission

59,032

59,032

Civil

 

 

40,150

 

40,150

Total Goodwill

$

215,103

$

215,103

The table below summarizes the intangible asset categories, amounts and the average amortization periods, which are on a straight-line basis (in thousands):

March 31, 2020

December 31, 2019

    

Weighted
Average Life

    

Gross Carrying
Amount

    

Accumulated
Amortization

    

Intangible assets, net

    

Gross Carrying
Amount

    

Accumulated
Amortization

    

Intangible assets, net

 

Tradename

9 years

$

16,040

(13,714)

2,326

$

16,040

$

(13,216)

$

2,824

Customer relationships

 

17 years

 

91,000

(26,128)

64,872

 

91,000

 

(24,353)

 

66,647

Non-compete agreements

5 years

 

1,900

(1,653)

247

 

1,900

 

(1,580)

 

320

Other

3 years

275

(260)

15

275

(237)

38

Total

 

16 years

$

109,215

$

(41,755)

$

67,460

$

109,215

$

(39,386)

$

69,829

Amortization expense of intangible assets was $2.4 million and $2.7 million for the three months ended March 31, 2020 and 2019, respectively. Estimated future amortization expense for intangible assets is as follows (in thousands):

Estimated

 

Intangible

 

Amortization

 

For the Years Ending December 31, 

    

Expense

 

2020 (remaining nine months)

$

6,448

2021

7,577

2022

 

6,416

2023

 

5,581

2024

 

4,862

Thereafter

 

36,576

$

67,460

Note 7—Accounts Payable and Accrued Liabilities

At March 31, 2020 and December 31, 2019, accounts payable included retention amounts of approximately $10.9 million and $11.3 million, respectively.  These amounts owed to subcontractors have been retained pending contract completion and customer acceptance of jobs.

The following is a summary of accrued liabilities (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Payroll and related employee benefits

$

74,008

$

64,705

Current operating lease liability

79,532

74,036

Casualty insurance reserves

 

9,902

 

9,918

Corporate income taxes and other taxes

 

6,822

 

9,027

Other

 

22,384

 

25,815

$

192,648

$

183,501

15

Note 8—Credit Arrangements

Long-term debt and credit facilities consists of the following (in thousands):

March 31, 

December 31, 

    

2020

    

2019

 

Term loan

$

200,750

$

203,500

Revolving credit facility

Commercial equipment notes

93,309

105,114

Mortgage notes

 

49,854

 

43,474

Total debt

343,913

352,088

Unamortized debt issuance costs

(734)

(787)

Total debt, net

$

343,179

$

351,301

Less: current portion

 

(52,430)

 

(55,659)

Long-term debt, net of current portion

$

290,749

$

295,642

The weighted average interest rate on total debt outstanding at March 31, 2020 and December 31, 2019 was 3.9% and 4.0%, respectively.

Credit Agreement

Our amended and restated credit agreement (“Credit Agreement”) consists of a $220.0 million term loan and a $200.0 million revolving credit facility (“Revolving Credit Facility”), whereby the lenders agreed to make loans on a revolving basis from time to time and to issue letters of credit for up to the $200.0 million committed amount. The Credit Agreement also includes the ability to increase the borrowing capacity thereunder by $75.0 million, subject to obtaining additional or increased lender commitments. The maturity date of the Credit Agreement is July 9, 2023. At March 31, 2020, there were no outstanding borrowings under the Revolving Credit Facility, commercial letters of credit outstanding were $39.5 million, and available borrowing capacity was $160.5 million.

The Credit Agreement contains various restrictive and financial covenants including, among others, a senior debt/EBITDA ratio and debt service coverage requirements. In addition, the Credit Agreement includes restrictions on investments, change of control provisions and provisions in the event we dispose of more than 20% of our total assets. We were in compliance with the covenants for the Credit Agreement at March 31, 2020.

Canadian Credit Facilities

We have a demand credit facility for $4.0 million in Canadian dollars with a Canadian bank for purposes of issuing commercial letters of credit in Canada. At March 31, 2020, commercial letters of credit outstanding were $0.6 million in Canadian dollars, and the available borrowing capacity was $3.4 million in Canadian dollars. The credit facility contains a working capital restrictive covenant for OnQuest Canada, ULC, our wholly owned subsidiary. At March 31, 2020, OnQuest Canada, ULC was in compliance with the covenant.

We have a credit facility for $10.0 million in Canadian dollars with CIBC Bank for working capital purposes in the normal course of business (“Working Capital Credit Facility”). At March 31, 2020, there were no outstanding borrowings under the Working Capital Credit Facility, and available borrowing capacity was $10.0 million in Canadian dollars. The Working Capital Credit Facility contains a cross default restrictive covenant where a default under our Credit Agreement will represent a default in the Working Capital Credit Facility.

Note 9 — Derivative Instruments

We are exposed to certain market risks related to changes in interest rates. To monitor and manage these market risks, we have established risk management policies and procedures. We do not enter into derivative instruments for any purpose other than hedging interest rate risk. None of our derivative instruments are used for trading purposes.

Interest Rate Risk. We are exposed to variable interest rate risk as a result of variable-rate borrowings under our Credit Agreement. To manage fluctuations in cash flows resulting from changes in interest rates on a portion of our

16

variable-rate debt, we entered into an interest rate swap agreement on September 13, 2018 with an initial notional amount of $165.0 million, or 75% of the debt outstanding under our Term Loan, which was not designated as a hedge for accounting purposes. The notional amount of the swap will be adjusted down each quarter by 75% of the required principal payments made on the Term Loan. The swap effectively changes the variable-rate cash flow exposure on the debt obligations to fixed rates. The fair value of outstanding interest rate swap derivatives can vary significantly from period to period depending on the total notional amount of swap derivatives outstanding and fluctuations in market interest rates compared to the interest rates fixed by the swaps. As of March 31, 2020, and December 31, 2019, our outstanding interest rate swap agreement contained a notional amount of $150.6 million and $152.6 million, respectively, with a maturity date of July 10, 2023.

Credit Risk. By using derivative instruments to economically hedge exposures to changes in interest rates, we are exposed to counterparty credit risk. Credit risk is the failure of a counterparty to perform under the terms of a derivative contract. When the fair value of a derivative contract is positive, the counterparty owes us, which creates credit risk for us. When the fair value of a derivative contract is negative, we owe the counterparty and, therefore, we do not possess credit risk. We minimize the credit risk in derivative instruments by entering into transactions with high quality counterparties. We have entered into netting agreements, including International Swap Dealers Association (“ISDA”) Agreements, which allow for netting of contract receivables and payables in the event of default by either party.

The following table summarizes the fair value of our derivative contracts included in the Condensed Consolidated Balance Sheets (in thousands):

    

    

    

March 31, 

    

December 31, 

 

Balance Sheet Location

2020

2019

 

Interest rate swap

Other long-term liabilities

11,414

6,443

Total derivatives

$

11,414

$

6,443

The following table summarizes the amounts recognized with respect to our derivative instruments within the Condensed Consolidated Statements of Operations (in thousands):

Three Months Ended

Location of Loss Recognized

March 31, 

    

on Derivatives

2020

    

2019

 

Interest rate swap

 

Interest expense

$

5,435

$

1,596

Cash flows from derivatives settled are reported as cash flows from operating activities.

Note 10 — Noncontrolling Interests

We own a 50% interest in the Carlsbad joint venture which operates in the Power segment. The joint venture has been determined to be a VIE and we were determined to be the primary beneficiary as a result of our significant influence over the joint venture operations.

The joint venture is a partnership, and consequently, only the tax effect of our share of the income was recognized by us. The net assets of the joint venture are restricted for use by the specific project and are not available for our general operations.

The Carlsbad joint venture’s operating activities began in 2015 and are included in our Condensed Consolidated Statements of Operations as follows (in thousands):

Three Months Ended March 31, 

    

2020

    

2019

 

Revenue

$

$

4,024

Net income attributable to noncontrolling interests

3

989

The Carlsbad joint venture made no distributions to the partners and we made no capital contributions to the Carlsbad joint venture during the three months ended March 31, 2020 and 2019. The project was substantially complete as of December 31, 2018 and the warranty period expires in December 2020.

17

The following table summarizes the total balance sheet amounts for the Carlsbad joint venture, which is included in our Condensed Consolidated Balance Sheets, and the total consolidated balance sheet amounts (in thousands):

Joint Venture

Consolidated

At March 31, 2020

    

Amounts

    

Amounts

 

Cash

$

2,026

$

93,474

Accounts receivable

416,412

Contract assets

359,370

Due from Primoris

476

Accounts payable

258,962

Contract liabilities

434

176,847

At December 31, 2019

Cash

$

2,124

$

120,286

Accounts receivable

404,911

Contract assets

344,806

Accounts payable

38

235,972

Contract liabilities

425

192,397

Note 11—Stock-Based Compensation

In May 2013, the shareholders approved and we adopted the Primoris Services Corporation 2013 Long-term Incentive Equity Plan (“Equity Plan”). Our Board of Directors has granted 607,361 Restricted Stock Units (“Units”), net of forfeitures, to employees under the Equity Plan. The grants were documented in RSU Award Agreements, which provide for a vesting schedule and require continuing employment of the employee. The Units are subject to earlier acceleration, termination, cancellation or forfeiture as provided in the underlying RSU Award Agreement.

At March 31, 2020, a total of 260,630 Units were vested. The vesting schedule for the remaining Units are as follows:

Number of Units

For the Years Ending December 31, 

    

to Vest

2020 (remaining nine months)

23,896

2021

179,364

2022

84,415

2023

59,056

346,731

Under guidance of ASC Topic 718 “Compensation — Stock Compensation”, stock-based compensation cost is measured at the date of grant, based on the calculated fair value of the stock-based award, and is recognized as expense over the employee’s requisite service period (generally the vesting period of the award).

The fair value of the Units was based on the closing market price of our common stock on the day prior to the date of the grant. Stock compensation expense for the Units is being amortized using the straight-line method over the service period. We recognized $0.5 million in compensation expense for each of the three months ended March 31, 2020 and 2019, respectively. At March 31, 2020, approximately $5.4 million of unrecognized compensation expense remained for the Units, which will be recognized over a weighted average period of 2.4 years.

Vested Units accrue “Dividend Equivalent Units” (as defined in the Equity Plan), which will be accrued as additional Units until the Units are converted to Common Stock.  At March 31, 2020, a total of 2,401 Dividend Equivalent Units were accrued.

Note 12—Income Taxes

We are subject to tax liabilities imposed by multiple jurisdictions. We determine our best estimate of the annual effective tax rate at each interim period using expected annual pre-tax earnings, statutory tax rates, and available tax planning opportunities. Certain significant or unusual items are separately recognized in the quarter in which they occur

18

which can cause variability in the effective tax rate from quarter to quarter. We recognize interest and penalties related to uncertain tax positions, if any, as an income tax expense.

We do not include the income tax expense or benefit related to the net earnings or loss attributable to noncontrolling interest in our income tax expense as the entities are considered pass-through entities and, as such, the income tax expense or benefit is attributable to its owners. The effective tax rate on income including noncontrolling interests for the three months ended March 31, 2020 and 2019 was 29.0% and 21.3%, respectively. Excluding noncontrolling interest, the effective tax rate on (loss) income attributable to Primoris for the three months ended March 31, 2020 and 2019 was 29.0%. For the first three months of 2020 and 2019, our tax rate differs from the U.S. federal statutory rate of 21.0% primarily due to the impact of state income taxes and nondeductible components of per diem expenses.

Our U.S. federal income tax returns are generally no longer subject to examination for tax years before 2016. The statutes of limitation of state and foreign jurisdictions generally vary between 3 to 5 years. Accordingly, our state and foreign income tax returns are generally no longer subject to examination for tax years before 2014.

Income taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for temporary differences between the financial reporting bases and tax bases of assets and liabilities based on enacted tax rates expected to be in effect when such amounts are realized or settled. However, deferred tax assets are recognized only to the extent that it is more likely than not that they will be realized based upon consideration of available evidence, including future reversals of existing taxable temporary differences, future projected taxable income, the length of the tax asset carryforward periods, and tax planning strategies. The effects of remeasurement of deferred tax assets and liabilities resulting from changes in tax rates are recognized in income in the period of enactment.

On March 27, 2020, the Coronavirus Aid, Relief, and Economic Security Act (CARES Act) was enacted by the US Government in response to the COVID-19 pandemic. Similarly, the Canada Emergency Wage Subsidy legislation was enacted on April 11, 2020 to provide employment retention incentives to certain Canadian employers. These relief measures did not materially affect the Consolidated Financial Statements for the first quarter of 2020. We are currently assessing the future implications of these provisions on our Consolidated Financial Statements.

Note 13—Dividends and Earnings Per Share

We paid cash dividends during 2020 and 2019 as follows:

Declaration Date

    

Record Date

    

Date Paid

    

Amount Per Share

November 2, 2018

December 31, 2018

January 15, 2019

0.060

February 26, 2019

March 29, 2019

April 15, 2019

0.060

May 3, 2019

June 28, 2019

July 15, 2019

0.060

August 2, 2019

September 30, 2019

October 15, 2019

0.060

October 31, 2019

December 31, 2019

January 15, 2020

0.060

February 21, 2020

March 31, 2020

April 15, 2020

0.060

The payment of future dividends is contingent upon our revenue and earnings, capital requirements and our general financial condition, as well as contractual restrictions and other considerations deemed relevant by the Board of Directors.

19

The table below presents the computation of basic and diluted (loss) earnings per share for the three months ended March 31, 2020 and 2019 (in thousands, except per share amounts).

Three Months Ended March 31, 

    

2020

    

2019

 

Numerator:

Net (loss) income attributable to Primoris

$

(3,737)

$

1,947

Denominator:

Weighted average shares for computation of basic earnings per share

 

48,588

 

50,770

Dilutive effect of shares issued to independent directors (1)

 

 

8

Dilutive effect of restricted stock units (1)

 

 

410

Weighted average shares for computation of diluted (loss) earnings per share

 

48,588

 

51,188

(Loss) earnings per share attributable to Primoris:

Basic

$

(0.08)

$

0.04

Diluted

$

(0.08)

$

0.04

(1)The dilutive effect of shares issued to independent directors and restricted stock units of 9 and 300, respectively, for the three months ended March 31, 2020, were excluded from the weighted average diluted shares outstanding for the three months ended March 31, 2020, as their inclusion would be anti-dilutive.

Note 14—Stockholders’ Equity

Common stock

We issued 34,524 and 114,106 shares of common stock in the three months ended March 31, 2020 and 2019, respectively, under our long-term retention plan (“LTR Plan”). The shares were purchased by the participants in the LTR Plan with payment made to us of $0.6 million and $1.8 million in the three months ended March 31, 2020 and 2019, respectively. Our LTR Plan for certain managers and executives allows participants to use a portion of their annual bonus amount to purchase our common stock at a discount from the market price. The shares purchased in the three months ended March 31, 2020 were a portion of bonus amounts earned in 2019, and the number of shares purchased was calculated based on 75% of the average daily closing market price of our common stock during December 2019. The shares purchased in the three months ended March 31, 2019 were for bonus amounts earned in 2018, and the number of shares was calculated at 75% of the average daily closing market price during December 2018.

In the three months ended March 31, 2020 and 2019, we issued 16,744 and 13,278 shares of common stock, respectively, as part of the quarterly compensation of the non-employee members of the Board of Directors.

As discussed in Note 11 — “Stock–Based Compensation”, as of March 31, 2020, the Board of Directors has granted a total of 607,361 shares of Units, net of forfeitures under the Equity Plan and a total of 2,401 Dividend Equivalent Units were accrued at March 31, 2020.

Share Repurchase Plan

In February 2020, our Board of Directors authorized a $25.0 million share repurchase program. Under the share repurchase program, we can, depending on market conditions, share price and other factors, acquire shares of our common stock on the open market or in privately negotiated transactions. In the three months ended March 31, 2020 we purchased and cancelled 461,831 shares of common stock, which in the aggregate, equaled $7.4 million at an average share price of $16.01. The share repurchase plan expires on December 31, 2020.

Note 15—Leases

We lease administrative and various operational facilities, which are generally longer-term, project specific facilities or yards, and construction equipment under non-cancelable operating leases. We determine if an arrangement is a lease at inception. We have lease agreements with lease and non-lease components, which are generally accounted for separately. Operating leases are included in operating lease assets, accrued liabilities, and noncurrent operating lease liabilities on our Condensed Consolidated Balance Sheets.

20

Operating lease assets and operating lease liabilities are recognized at commencement date based on the present value of the future minimum lease payments over the lease term. In determining our lease term, we include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date to determine the present value of future payments. Lease expense from minimum lease payments is recognized on a straight-line basis over the lease term.

Our leases have remaining lease terms that expire at various dates through 2030, some of which may include options to extend the leases for up to 5 years. The exercise of lease extensions is at our sole discretion. Periodically, we sublease excess facility space, but any sublease income is generally not significant. Our lease agreements do not contain any material residual value guarantees or material restrictive covenants.

The components of lease expense are as follows (in thousands):

Three Months Ended March 31, 

    

2020

    

2019

Operating lease expense

$

22,978

(1)

$

16,513

(1)

________________________________________

(1)Includes short-term leases which are immaterial.

Our operating lease liabilities are reported on the Condensed Consolidated Balance Sheets as follows (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Accrued liabilities

$

79,532

$

74,036

Noncurrent operating lease liabilities, net of current portion

 

176,546

 

171,225

$

256,078

$

245,261

Note 16—Commitments and Contingencies

NTTA settlement — On February 7, 2012, we were sued in an action entitled North Texas Tollway Authority (“NTTA”), Plaintiff v. James Construction Group, LLC, and KBR, Inc., Defendants, v. Reinforced Earth Company, Third-Party Defendant (the “Lawsuit”). On February 25, 2015, the Lawsuit was settled, and we recorded a liability for $17.0 million. A second defendant agreed to provide up to $5.4 million to pay for the total expected remediation cost of approximately $22.4 million. We will pay a third-party contractor approved by the NTTA to complete the remediation. In the event that the total remediation costs exceed the $22.4 million, the second defendant would pay 20% of the excess amount and we would pay for 80% of the excess amount. During the three months ended March 31, 2020, we increased our estimate of the total expected remediation costs by $0.5 million. We also spent $2.5 million for remediation during the three months ended March 31, 2020. While we continue to monitor the progress toward remediation and the total remediation costs, at this time we cannot determine the total eventual remediation cost. At March 31, 2020, the remaining accrual balance was $6.5 million.

Legal proceedings — We had been engaged in dispute resolution to collect money we believe we were owed for a construction project completed in 2014. The dispute resolution for the receivable initially required international arbitration; however, in the first half of 2016, the owner sought bankruptcy protection in U.S. bankruptcy court. We initiated litigation against the sureties who had provided lien and stop payment release bonds for the amount owed. During 2018, we settled with the sureties. In addition, we believe we are owed amounts from the bankruptcy trustee. We expect that we will collect a portion of the amount owed to us but cannot predict the timing of such collection.

We are subject to other claims and legal proceedings arising out of our business. We provide for costs related to contingencies when a loss from such claims is probable and the amount is reasonably estimable. In determining whether it is possible to provide an estimate of loss, or range of possible loss, we review and evaluate our litigation and regulatory matters on a quarterly basis in light of potentially relevant factual and legal developments. If we determine an unfavorable outcome is not probable or probable but not reasonably estimable, we do not accrue for a potential litigation loss.

21

Management is unable to ascertain the ultimate outcome of other claims and legal proceedings; however, after review and consultation with counsel and taking into consideration relevant insurance coverage and related deductibles/self-insurance retention, management believes that it has meritorious defenses to such claims and believes that the reasonably possible outcome of such claims will not, individually or in the aggregate, have a material adverse effect on our consolidated results of operations, financial condition or cash flow.

Bonding — At March 31, 2020 and December 31, 2019, the Company had bid and completion bonds issued and outstanding totaling approximately $829.0 million and $648.6 million, respectively.

Note 17—Reportable Segments

We segregate our business into five reportable segments: the Power segment, the Pipeline segment, the Utilities segment, the Transmission segment, and the Civil segment. Each of our reportable segments is comprised of similar business units that specialize in services unique to the segment. Driving the end-user focused segments are differences in the economic characteristics of each segment, the nature of the services provided by each segment; the production processes of each segment; the type or class of customer using the segment’s services; the methods used by the segment to provide the services; and the regulatory environment of each segment’s customers.

The classification of revenue and gross profit for segment reporting purposes can at times require judgment on the part of management. Our segments may perform services across industries or perform joint services for customers in multiple industries. To determine reportable segment gross profit, certain allocations, including allocations of shared and indirect costs, such as facility costs, equipment costs and indirect operating expenses, were made.

The following is a brief description of the reportable segments:

The Power segment operates throughout the United States and in Canada and specializes in a range of services that include engineering, procurement, and construction, retrofits, upgrades, repairs, outages, and maintenance services for entities in the petroleum and petrochemical industries, as well as traditional and renewable power generators.

The Pipeline segment operates throughout the United States and specializes in a range of services, including pipeline construction and maintenance, pipeline facility and integrity services, installation of compressor and pump stations, and metering facilities for entities in the petroleum and petrochemical industries, as well as gas, water, and sewer utilities.

The Utilities segment operates primarily in California, the Midwest, the Atlantic Coast, and the Southeast regions of the United States and specializes in a range of services, including installation and maintenance of new and existing natural gas utility distribution systems and pipeline integrity services for entities in the gas utility market.

The Transmission segment operates primarily in the Southeastern, Midwest, Atlantic Coast, and Gulf Coast regions of the United States and specializes in a range of services, including installation and maintenance of new and existing electric utility transmission, substation, and distribution systems for entities in the electric utility market.

The Civil segment operates primarily in the Southeastern and Gulf Coast regions of the United States and specializes in highway and bridge construction, airport runway construction, demolition, site work, soil stabilization, mass excavation, flood control, and drainage projects for entities in the petroleum and petrochemical industries, state and municipal departments of transportation, and airports.

All intersegment revenue and gross profit, which was immaterial, has been eliminated in the following tables. Total assets by segment is not presented as our Chief Operating Decision Maker as defined by ASC 280 does not review or allocate resources based on segment assets.

22

Segment Revenue

Revenue by segment was as follows (in thousands):

For the three months ended March 31, 

2020

2019

% of

% of

Total

Total

Segment

    

Revenue

    

Revenue

    

Revenue

    

Revenue

Power

$

196,193

 

26.4%

$

145,383

 

22.0%

Pipeline

191,523

25.8%

134,814

20.4%

Utilities

 

147,170

 

19.8%

 

146,206

 

22.1%

Transmission

102,784

13.8%

118,443

17.9%

Civil

 

105,573

 

14.2%

 

116,712

 

17.6%

Total

$

743,243

 

100.0%

$

661,558

 

100.0%

Segment Gross Profit

Gross profit by segment was as follows (in thousands):

For the three months ended March 31, 

2020

2019

    

    

% of

    

    

% of

Segment

Segment

Segment

Gross Profit

Revenue

Gross Profit

Revenue

Power

$

18,682

 

9.5%

$

20,198

 

13.9%

Pipeline

16,492

8.6%

15,016

11.1%

Utilities

 

4,602

 

3.1%

 

8,241

 

5.6%

Transmission

1,712

1.7%

6,628

5.6%

Civil

 

6,322

 

6.0%

 

2,377

 

2.0%

Total

$

47,810

 

6.4%

$

52,460

 

7.9%

Segment Goodwill

The amount of goodwill recorded by each segment at March 31, 2020 and at December 31, 2019 is presented in Note 6 – “Goodwill and Intangible Assets”.

Geographic Region — Revenue and Total Assets

The majority of our revenue is derived from customers in the United States with approximately 4.2% and 4.6% generated from sources outside of the United States during the three months ended March 31, 2020 and 2019, respectively, principally in Canada. At March 31, 2020 and December 31, 2019, approximately 3.4% and 4.4%, respectively, of total assets were located outside of the United States, principally in Canada.

Note 18—Subsequent Events

Cash Dividend

On May 1, 2020, the Board of Directors declared a cash dividend of $0.06 per share of common stock for stockholders of record as of June 30, 2020, payable on or about July 15, 2020.

23

PRIMORIS SERVICES CORPORATION

MANAGEMENT’S DISCUSSION AND ANALYSIS

Item 2. Management’s Discussion and Analysis of Financial Condition and Results of Operations

Forward Looking Statements

This Quarterly Report on Form 10-Q for the quarterly period ended March 31, 2020 (“First Quarter 2020 Report”) contains forward-looking statements within the meaning of Section 27A of the Securities Act of 1933, as amended (the “Securities Act”), and Section 21E of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), which are subject to the “safe harbor” created by those sections. Forward-looking statements include information concerning our possible or assumed future results of operations, business strategies, financing plans, competitive position, industry environment, potential growth opportunities, the effects of regulation and the economy, generally. Forward-looking statements include all statements that are not historical facts and can be identified by terms such as “anticipates”, “believes”, “could”, “estimates”, “expects”, “intends”, “may”, “plans”, “potential”, “predicts”, “projects”, “should”, “will”, “would” or similar expressions.

Forward-looking statements involve known and unknown risks, uncertainties and other factors which may cause our actual results, performance or achievements to be materially different from any future results, performance or achievements expressed or implied by the forward-looking statements. We discuss many of these risks in detail in Part I, Item 1A “Risk Factors” of our Annual Report on Form 10-K for the year ended December 31, 2019 and our other filings with the Securities and Exchange Commission (“SEC”), including in Part II, Item 1A “Risk Factors” of this First Quarter 2020 report. You should read this First Quarter 2020 Report, our Annual Report on Form 10-K for the year ended December 31, 2019 and our other filings with the SEC completely and with the understanding that our actual future results may be materially different from what we expect.

Given these uncertainties, you should not place undue reliance on these forward-looking statements. Also, forward-looking statements represent our management’s beliefs and assumptions only as of the date of this First Quarter 2020 Report. We assume no obligation to update these forward-looking statements publicly, or to update the reasons actual results could differ materially from those anticipated in any forward-looking statements, even if new information becomes available.

The following discussion and analysis should be read in conjunction with the unaudited financial statements and the accompanying notes included in Part 1, Item 1 of this First Quarter 2020 Report and our Annual Report on Form 10-K for the year ended December 31, 2019.

Introduction

We are one of the leading providers of specialty contracting services operating mainly in the United States and Canada. We provide a wide range of specialty construction services, fabrication, maintenance, replacement, and engineering services to a diversified base of customers through our five segments: Power, Industrial, and Engineering (“Power”), Pipeline and Underground (“Pipeline”), Utilities and Distribution (“Utilities”), Transmission and Distribution (“Transmission”), and Civil. The structure of our reportable segments is generally focused on broad end-user markets for our services.

The Power segment operates throughout the United States and in Canada and specializes in a range of services that include engineering, procurement, and construction, retrofits, upgrades, repairs, outages, and maintenance services for entities in the petroleum and petrochemical industries, as well as traditional and renewable power generators.

The Pipeline segment operates throughout the United States and specializes in a range of services, including pipeline construction and maintenance, pipeline facility and integrity services, installation of compressor and pump stations, and metering facilities for entities in the petroleum and petrochemical industries, as well as gas, water, and sewer utilities.

The Utilities segment operates primarily in California, the Midwest, the Atlantic Coast, and the Southeast regions of the United States and specializes in a range of services, including installation and maintenance of new and existing natural gas utility distribution systems and pipeline integrity services for entities in the gas utility market.

24

The Transmission segment operates primarily in the Southeastern, Midwest, Atlantic Coast, and Gulf Coast regions of the United States and specializes in a range of services, including installation and maintenance of new and existing electric utility transmission, substation, and distribution systems for entities in the electric utility market.

The Civil segment operates primarily in the Southeastern and Gulf Coast regions of the United States and specializes in highway and bridge construction, airport runway construction, demolition, site work, soil stabilization, mass excavation, flood control, and drainage projects for entities in the petroleum and petrochemical industries, state and municipal departments of transportation, and airports.

We have longstanding customer relationships with major utility, refining, petrochemical, power, midstream, and engineering companies, and state departments of transportation. We have completed major underground and industrial projects for a number of large natural gas transmission and petrochemical companies in the United States, major electrical and gas projects for a number of large utility companies in the United States, as well as significant projects for our engineering customers. We enter into a large number of contracts each year, and the projects can vary in length from daily work orders to as long as 36 months, and occasionally longer, for completion on larger projects. Although we have not been dependent upon any one customer in any year, a small number of customers tend to constitute a substantial portion of our total revenue in any given year.

We generate revenue under a range of contracting options, including fixed-price, unit-price, time and material, and cost reimbursable plus fee contracts. A substantial portion of our revenue is derived from contracts that are fixed-price or unit-price and is recognized over time as work is completed because of the continuous transfer of control to the customer. For time and material and cost reimbursable plus fee contracts, revenue is recognized primarily on an input basis, based on contract costs incurred as defined within the respective contracts.

The classification of revenue and gross profit for segment reporting purposes can at times require judgment on the part of management. Our segments may perform services across industries or perform joint services for customers in multiple industries. To determine reportable segment gross profit, certain allocations, including allocations of shared and indirect costs, such as facility costs, equipment costs and indirect operating expenses were made.

Material trends and uncertainties

We generate our revenue from construction and engineering projects, as well as from providing a variety of construction services. We depend in part on spending by companies in the gas and electric utility industries, the energy, chemical, and oil and gas industries, as well as state departments of transportation and municipal water and wastewater customers. Over the past several years, each segment has benefited from demand for more efficient and more environmentally friendly energy and power facilities, more reliable gas and electric utility infrastructure, local highway and bridge needs, and from the activity level in the oil and gas industry. However, periodically, each of these industries and government agencies is adversely affected by macroeconomic conditions. Economic and other factors outside of our control may affect the amount and size of contracts we are awarded in any particular period.

In March 2020, the novel coronavirus (“COVID-19”) outbreak was declared a National Public Health Emergency which continues to spread throughout the world and has adversely impacted global activity and contributed to significant declines and volatility in financial markets. In an effort to contain COVID-19 or slow its spread, governments around the world have also enacted various measures, including orders to close all businesses not deemed “essential”, isolate residents to their homes or places of residence, and practice social distancing when engaging in essential activities. While our services have generally been deemed to be essential services, all segments have reported various levels of project interruptions and restrictions that have delayed project timelines from those originally planned. In some cases, we have experienced temporary work stoppages. This led to general inefficiencies from having to start and stop work, re-sequencing work, requiring on-site health screenings before entering a job site, and following proper social distancing practices. We have also been restricted from completing work or have been prevented from starting work on certain projects.

We anticipate that the outbreak could have a continued adverse impact on economic and market conditions and trigger a period of global economic slowdown. When COVID-19 is demonstrably contained, we anticipate a rebound in economic activity, depending on the rate, pace, and effectiveness of the containment efforts deployed by various national, state, and local governments.

25

To date, the inefficiencies experienced have had an unquantifiable impact to our business. We will continue to actively monitor the situation and may take further actions to alter our business operations that we determine are in the best interests of our employees, customers, suppliers, and stakeholders, or as required by federal, state, or local authorities. It is not clear what the potential effects any such alterations or modifications may have on our business or on our financial results for the remainder of 2020.

We also monitor our customers and their industries to assess the effect that changes in economic, market, and regulatory conditions may have on them. We have experienced reduced spending by some of our customers over the last several months, which we attribute to negative economic and market conditions, and we anticipate that these negative conditions and the impact of COVID-19 may continue to affect demand for our services in the near-term.

Fluctuations in market prices of oil, gas and other fuel sources have affected demand for our services. The volatility in the prices of oil, gas, and liquid natural gas that has occurred in the past few years could create uncertainty with respect to demand for our oil and gas pipeline services, specifically in our oil field services and Canadian operations. The recent significant reduction in the price of oil could create uncertainty with respect to demand for our oil and gas pipeline services in the near term, with additional uncertainty resulting over the length of time that prices remain depressed. When the current oversupply eases and with a return to increasing global demand for oil, we expect oil prices to recover from the current levels. While the construction of gathering lines within the oil shale formations may remain at lower levels for an extended period, we believe that over time, the need for pipeline infrastructure for mid-stream and gas utility companies will result in a continuing need for our services. However, a prolonged period of depressed oil prices could delay midstream pipeline opportunities.

The continuing changes in the regulatory environment may affect the demand for our services, either by increasing our work or delaying projects. For example, environmental laws and regulation can provide challenges to major pipeline projects, resulting in delays that impact the timing of revenue recognition. In addition, the regulatory environment in California may result in delays for the construction of gas-fired power plants, while regulators continue to search for significant renewable resources. Renewable resources are also creating a demand for our construction and specialty services, such as the need for battery storage and the construction of solar power production facilities.

Seasonality, cyclicality and variability

Our results of operations are subject to quarterly variations. Some of the variation is the result of weather, particularly rain, ice, snow, and named storms, which can impact our ability to perform construction and specialty services. These seasonal impacts can affect revenue and profitability in all of our businesses since utilities defer routine replacement and repair during their period of peak demand. Any quarter can be affected either negatively, or positively by atypical weather patterns in any part of the country. In addition, demand for new projects tends to be lower during the early part of the calendar year due to clients’ internal budget cycles. As a result, we usually experience higher revenue and earnings in the third and fourth quarters of the year as compared to the first two quarters.

Our project values range in size from several hundred dollars to several hundred million dollars. The bulk of our work is comprised of project sizes that average less than $5.0 million. We also perform construction projects which tend not to be seasonal, but can fluctuate from year to year based on customer timing, project duration, weather, and general economic conditions. Our business may be affected by declines, or delays in new projects, or by client project schedules. Because of the cyclical nature of our business, the financial results for any period may fluctuate from prior periods, and our financial condition and operating results may vary from quarter to quarter. Results from one quarter may not be indicative of our financial condition, or operating results for any other quarter, or for an entire year.

Critical Accounting Policies and Estimates

The preparation of financial statements in conformity with accounting principles generally accepted in the United States requires us to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities as of the date of the financial statements and that affect the amounts of revenue and expenses reported for each period. These estimates and assumptions must be made because certain information that is used in the preparation of our financial statements cannot be calculated with a high degree of precision from data available, is dependent on future events, or is not capable of being readily calculated based on generally accepted methodologies. Often, these estimates are particularly difficult to determine, and we must exercise significant judgment. Actual results could differ significantly from our estimates, and our estimates could change if they were made under different assumptions or conditions. Our critical accounting policies are described in our Item 7 of our Annual Report on

26

Form 10-K for the year ended December 31, 2019. There have been no material changes to our critical accounting policies since December 31, 2019.

Results of Operations

Consolidated Results

The following discussion compares the results of the three months ended March 31, 2020 to the three months ended March 31, 2019.

Revenue

Revenue was $743.2 million for the three months ended March 31, 2020, an increase of $81.7 million, or 12.3%, compared to the same period in 2019. The increase was primarily due to growth in our Pipeline and Power segments, partially offset by lower revenue in our Transmission and Civil segments.

Gross Profit

Gross profit was $47.8 million for the three months ended March 31, 2020, a decrease of $4.7 million, or 8.9%, compared to the same period in 2019. The decrease was primarily due to a decrease in gross profit as a percentage of revenue, partially offset by revenue growth. Gross profit as a percentage of revenue decreased to 6.4% for the three months ended March 31, 2020, compared to 7.9% for the same period in 2019 as described in the forthcoming segment results.

Selling, general and administrative expenses

Selling, general and administrative (“SG&A”) expenses were $44.4 million during the three months ended March 31, 2020, an increase of $1.5 million, or 3.4%, compared to 2019 primarily due to a $1.0 million increase in consulting expenses. SG&A expense as a percentage of revenue decreased to 6.0% compared to 6.5% for the corresponding period in 2019 due to increased revenue.

Other income and expense

Non-operating income and expense items for the three months ended March 31, 2020 and 2019 were as follows (in thousands):

Three Months Ended

March 31, 

    

2020

    

2019

 

Foreign exchange gain (loss)

$

136

$

(185)

Other income (expense), net

 

12

 

(370)

Interest income

 

281

 

349

Interest expense

 

(9,112)

 

(5,592)

Total other income (expense)

$

(8,683)

$

(5,798)

Foreign exchange gains reflect currency exchange fluctuations associated with our Canadian engineering operation, which operates principally in United States dollars.

Interest expense for the three months ended March 31, 2020, increased compared to the same period in 2019 due primarily to a $5.0 million unrealized loss on the change in the fair value of our interest rate swap agreement during the three months ended March 31, 2020, compared to $1.4 million in 2019.

Provision for income taxes

We are subject to tax liabilities imposed by multiple jurisdictions. We determine our best estimate of the annual effective tax rate at each interim period using expected annual pre-tax earnings, statutory tax rates, and available tax planning opportunities. Certain significant or unusual items are separately recognized in the quarter in which they occur which can cause variability in the effective tax rate from quarter to quarter. We recognize interest and penalties related to uncertain tax positions, if any, as an income tax expense.

27

The effective tax rate on income attributable to Primoris (excluding noncontrolling interests) was 29.0% for the three months ended March 31, 2020. The rate differs from the U.S. federal statutory rate of 21.0% primarily due to state income taxes and nondeductible components of per diem expenses.

We recorded an income tax benefit for the three months ended March 31, 2020 of $1.5 million compared to an expense of $0.8 million for the three months ended March 31, 2019. The $2.3 million decrease in income tax expense was primarily driven by a $8.0 million decrease in pre-tax income (excluding noncontrolling interests).

Segment results

Power Segment

Revenue and gross profit for the Power segment for the three months ended March 31, 2020 and 2019 were as follows:

Three Months Ended March 31, 

2020

2019

    

    

% of

    

    

% of

 

Segment

Segment

(Thousands)

Revenue

(Thousands)

Revenue

Power Segment

Revenue

$

196,193

$

145,383

Gross profit

18,682

 

9.5%

20,198

 

13.9%

Revenue increased by $50.8 million, or 34.9%, for the three months ended March 31, 2020, compared to the same period in 2019. The increase is primarily due to a carbon monoxide and hydrogen plant project that began in the second quarter of 2019 ($33.1 million) and progress on a West Texas solar facility project that began late in the first quarter of 2019 ($16.8 million).

Gross profit for the three months ended March 31, 2020, decreased by $1.5 million, or 7.5%, compared to the same period in 2019 due to lower margins, partially offset by higher revenue. Gross profit as a percentage of revenue decreased to 9.5% during the three months ended March 31, 2020, compared to 13.9% in the same period in 2019 primarily due to higher costs associated with an engineering project and a Canadian tank farm project in 2020, as well as the favorable impact from the closeout of multiple refinery projects and our Carlsbad joint venture project in 2019. These amounts are partially offset by an improved gross margin on a West Texas solar facility project in 2020 and increase in expected claim recovery on a project completed in 2014.

Pipeline Segment

Revenue and gross profit for the Pipeline segment for the three months ended March 31, 2020 and 2019 were as follows:

Three Months Ended March 31, 

2020

2019

    

    

% of

    

    

% of

 

Segment

Segment

(Thousands)

Revenue

(Thousands)

Revenue

Pipeline Segment

Revenue

$

191,523

$

134,814

Gross profit

16,492

 

8.6%

15,016

 

11.1%

Revenue increased by $56.7 million, or 42.1%, for the three months ended March 31, 2020, compared to the same period in 2019. The increase is primarily due to pipeline projects in Texas and Virginia that began in the first quarter of 2020 ($118.2 million combined), partially offset by the substantial completion of a major pipeline project in West Texas in the second quarter of 2019 and reduced activity on a major pipeline project in the Mid-Atlantic ($51.3 million combined).

Gross profit for the three months ended March 31, 2020 increased by $1.5 million, or 9.8%, compared to the same period in 2019 due to higher revenue, partially offset by lower margins. Gross profit as a percentage of revenue decreased to 8.6% during the three months ended March 31, 2020, compared to 11.1% in the same period in 2019 primarily due to

28

startup costs on pipeline projects in Texas in 2020 and the favorable impact from the closeout of multiple pipeline projects in 2019.

Utilities Segment

Revenue and gross profit for the Utilities segment for the three months ended March 31, 2020 and 2019 were as follows:

Three Months Ended March 31, 

2020

2019

    

    

% of

    

    

% of

 

Segment

Segment

(Thousands)

Revenue

(Thousands)

Revenue

Utilities Segment

Revenue

$

147,170

$

146,206

Gross profit

4,602

 

3.1%

8,241

 

5.6%

Revenue increased by $1.0 million, or 0.7%, for the three months ended March 31, 2020, compared to the same period in 2019 primarily due to increased activity with utility customers in the Midwest, Southeast, and Texas ($10.5 million combined), partially offset by decreased activity with a utility customer in California.

Gross profit for the three months ended March 31, 2020 decreased by $3.6 million, or 44.2%, compared to the same period in 2019 primarily due to lower margins. Gross profit as a percent of revenue decreased to 3.1% during the three months ended March 31, 2020, compared to 5.6%, in the same period in 2019 primarily due to the favorable impact from the closeout of multiple jobs with a utility customer in California in 2019.

Transmission Segment

Revenue and gross profit for the Transmission segment for the three months ended March 31, 2020 and 2019 were as follows:

Three Months Ended March 31, 

2020

2019

    

    

% of

    

    

% of

 

Segment

Segment

(Thousands)

Revenue

(Thousands)

Revenue

Transmission Segment

Revenue

$

102,784

$

118,443

Gross profit

1,712

 

1.7%

6,628

 

5.6%

Revenue decreased by $15.7 million, or 13.2%, for the three months ended March 31, 2020, compared to the same period in 2019 primarily due to decreased activity with a utility customer in Texas.

Gross profit for the three months ended March 31, 2020, decreased by $4.9 million, or 74.2%, compared to the same period in 2019, due primarily to lower revenue and margins. Gross profit as a percentage of revenue decreased to 1.7% during the three months ended March 31, 2020, compared to 5.6% in the same period in 2019 primarily due to slower than anticipated release of work by certain customers resulting in higher relative carrying costs for equipment and personnel, and the unfavorable impact of mix of projects in 2020.

29

Civil Segment

Revenue and gross profit for the Civil segment for the three months ended March 31, 2020 and 2019 were as follows:

Three Months Ended March 31, 

2020

2019

    

    

% of

    

    

% of

Segment

Segment

(Thousands)

Revenue

(Thousands)

Revenue

Civil Segment

Revenue

$

105,573

$

116,712

Gross profit

6,322

 

6.0%

2,377

 

2.0%

Revenue decreased by $11.1 million, or 9.5%, for the three months ended March 31, 2020, compared to the same period in 2019. The decrease is primarily due to the substantial completion of an ethylene plant project in the second quarter of 2019 and lower Texas Department of Transportation volumes ($16.3 million combined). These amounts were partially offset by progress on a methanol plant project that began in 2019 and higher Louisiana Department of Transportation and Development (“DOTD”) volumes.

Gross profit for the three months ended March 31, 2020 increased by $3.9 million compared to the same period in 2019 due to higher margins, partially offset by lower revenue. Gross profit as a percentage of revenue increased to 6.0% during the three months ended March 31, 2020, compared to 2.0% in the same period in 2019 due primarily to increased profit on Louisiana DOTD projects and the unfavorable impact from the Belton area projects in 2019. As of December 31, 2019, all of the Belton area projects were substantially complete.

At March 31, 2020, we had approximately $28.2 million of unapproved contract modifications included in the aggregate transaction prices associated with the Belton area projects, all of which had been recognized as revenue on a cumulative catch-up basis through March 31, 2020.

30

Geographic area financial information

The majority of our revenue is derived from customers in the United States with approximately 4.2% generated from sources outside of the United States during the three months ended March 31, 2020, principally in Canada.

Backlog

For companies in the construction industry, backlog can be an indicator of future revenue streams. Different companies define and calculate backlog in different manners. We define backlog as a combination of: (1) anticipated revenue from the uncompleted portions of existing contracts for which we have known revenue amounts for fixed-price and unit-price contracts (“Fixed Backlog”), and (2) the estimated revenue on MSA work for the next four quarters (“MSA Backlog”). We normally do not include time-and-equipment, time-and-materials and cost reimbursable plus fee contracts in the calculation of backlog, since their final revenue amount is difficult to estimate in advance. However, we will include these types of contracts in backlog if the customer specifies an anticipated revenue amount.

The two components of backlog, Fixed Backlog and MSA Backlog, are detailed below.

Fixed Backlog

Fixed Backlog by reportable segment as of December 31, 2019 and March 31, 2020 and the changes in Fixed Backlog for the three months ended March 31, 2020 are as follows (in millions):

    

Beginning Fixed

    

    

    

Ending Fixed

    

Revenue

    

Total Revenue

 

Backlog at

Contract

Revenue

Backlog at

Recognized from

for Three Months

 

December 31, 

Additions to

Recognized from

March 31, 

Non-Fixed

ended March 31, 

 

Reportable Segment

2019

Fixed Backlog

Fixed Backlog

2020

00

00

 Backlog Projects

00

00

2020

 

Power

$

401.3

$

112.7

$

155.5

$

358.5

$

40.7

$

196.2

Pipeline

743.4

318.0

144.8

916.6

46.7

191.5

Utilities

 

36.6

 

42.5

 

42.6

 

36.5

 

104.5

 

147.1

Transmission

23.0

11.7

21.0

13.7

81.8

102.8

Civil

 

555.1

 

157.0

 

102.7

 

609.4

 

2.9

 

105.6

Total

$

1,759.4

$

641.9

$

466.6

$

1,934.7

$

276.6

$

743.2

Revenue recognized from non-Fixed Backlog projects shown above are generated by MSA projects and projects completed under time and material and cost reimbursable plus fee contracts, or are generated from the sale of construction materials, such as rock or asphalt to outside third parties.

At March 31, 2020, our total Fixed Backlog was $1.93 billion, representing an increase of $175.3 million, or 10.0%, compared to $1.76 billion at December 31, 2019. 

MSA Backlog

The following table outlines historical MSA revenue for the past five quarters (in millions):

Quarterly MSA Revenue

    

2019

    

2020

First Quarter

$

292.9

$

270.4

Second Quarter

348.3

 

Third Quarter

366.9

 

Fourth Quarter

348.5

MSA Backlog includes anticipated MSA revenue for the next twelve months. We estimate MSA revenue based on historical trends, anticipated seasonal impacts and estimates of customer demand based on information from our customers.

31

The following table shows our estimated MSA Backlog at March 31, 2020 by reportable segment (in millions):

MSA Backlog

at March 31, 

Reportable Segment:

    

2020

Power

$

95.3

Pipeline

85.3

Utilities

 

677.9

Transmission

407.2

Civil

 

3.7

Total

$

1,269.4

Total Backlog

The following table shows total backlog (Fixed Backlog plus MSA Backlog), by reportable segment as of the quarter-end dates shown below (in millions):

    

    

    

    

Reportable Segment:

    

March 31, 2019

    

June 30, 2019

    

September 30, 2019

    

December 31, 2019

    

March 31, 2020

Power

$

557.8

$

498.8

$

512.0

$

515.4

$

453.8

Pipeline

659.5

 

866.3

 

854.2

 

862.3

 

1,001.9

Utilities

 

802.3

 

782.4

 

764.3

 

774.0

 

714.4

Transmission

468.9

473.0

469.8

467.0

420.9

Civil

 

451.5

 

576.0

 

610.3

 

558.8

 

613.1

Total

$

2,940.0

$

3,196.5

$

3,210.6

$

3,177.5

$

3,204.1

We expect that during the next four quarters, we will recognize as revenue approximately 73% of the total backlog at March 31, 2020, comprised of backlog of approximately: 87% of the Power segment; 45% of the Pipeline segment; 100% of the Utilities segment; 100% of the Transmission segment; and 57% of the Civil segment.

Backlog should not be considered a comprehensive indicator of future revenue, as a percentage of our revenue is derived from projects that are not part of a backlog calculation. The backlog estimates include amounts from estimated MSA contracts, but our customers are not contractually obligated to purchase an amount of services from us under the MSAs. Any of our contracts, MSA, fixed-price or unit-price, may be terminated by our customers on relatively short notice. In the event of a project cancellation, we may be reimbursed for certain costs, but typically we have no contractual right to the total revenue reflected in backlog. Projects may remain in backlog for extended periods of time as a result of customer delays, regulatory requirements or project specific issues. Future revenue from projects completed under time and material and cost reimbursable plus fee contracts may not be included in our estimated backlog amount.

Liquidity and Capital Resources

Liquidity represents our ability to pay our liabilities when they become due, fund business operations and meet our contractual obligations and execute our business plan. Our primary sources of liquidity are our cash balances at the beginning of each period and our net cash flow. If needed, we have availability under our lines of credit to augment liquidity needs. At March 31, 2020, there were no outstanding borrowings under the Revolving Credit Facility, commercial letters of credit outstanding were $39.5 million, and available borrowing capacity was $160.5 million. In order to maintain sufficient liquidity, we evaluate our working capital requirements on a regular basis. We may elect to raise additional capital by issuing common stock, convertible notes, term debt or increasing our credit facility as necessary to fund our operations or to fund the acquisition of new businesses.

Our cash and cash equivalents totaled $93.5 million at March 31, 2020, compared to $120.3 million at December 31, 2019. We anticipate that our cash and investments on hand, existing borrowing capacity under credit facilities and our future cash flows from operations will provide sufficient funds to enable us to meet our operating needs, our planned capital expenditures, and settle our commitments and contingencies for at least the next twelve months. In evaluating our liquidity, we do not consider cash and cash equivalents held by our consolidated VIEs.

The construction industry is capital intensive, and we expect to continue to make capital expenditures to meet anticipated needs for our services. Historically, we have invested an amount that approximated the sum of depreciation and

32

amortization expenses plus proceeds from equipment sales. During the three months ended March 31, 2020, we spent approximately $9.3 million for capital expenditures, which included $4.9 million for construction equipment. The total of our depreciation, amortization and equipment sales was approximately $19.8 million. Capital expenditures for the remaining nine months of 2020 are expected to total between $30.0 million and $40.0 million.

Cash Flows

Cash flows during the three months ended March 31, 2020 and 2019 are summarized as follows (in thousands):

Three months ended

March 31, 

    

2020

    

2019

 

Change in cash:

Net cash used in operating activities

$

(5,467)

$

(72,096)

Net cash used in investing activities

 

(2,409)

 

(9,979)

Net cash (used in) provided by financing activities

 

(19,195)

 

4,670

Effect of exchange rate changes

259

327

Net change in cash and cash equivalents

$

(26,812)

$

(77,078)

Operating Activities

The source of our cash flows from operating activities for the three months ended March 31, 2020 and 2019 were as follows (in thousands):

Three months ended

March 31, 

    

2020

    

2019

    

Change

 

Operating Activities:

Net (loss) income

$

(3,734)

$

2,936

$

(6,670)

Depreciation and amortization

 

19,797

 

21,700

 

(1,903)

Changes in assets and liabilities

 

(26,509)

 

(96,529)

 

70,020

Other

 

4,979

 

(203)

 

5,182

Net cash used in operating activities

$

(5,467)

$

(72,096)

$

66,629

Net cash used in operating activities for the three months ended March 31, 2020 was $5.5 million compared to $72.1 million for the three months ended March 31, 2019. The change year-over-year was primarily due to a favorable impact from the changes in assets and liabilities.

The significant components of the $26.5 million change in assets and liabilities for the three months ended March 31, 2020 are summarized as follows:

Contract liabilities decreased by $15.4 million, primarily due to lower deferred revenue;

Accounts receivable increased by $13.9 million, due primarily to the timing of collecting from our customers;

Contract assets increased by $15.7 million, primarily due to the timing of billing our customers; and

Accounts payable and accrued liabilities increased by $23.8 million, due to the timing of payments to our vendors and suppliers.

Investing activities

For the three months ended March 31, 2020, we used $2.4 million in cash for investing activities compared to $10.0 million for the three months ended March 31, 2019.

During the three months ended March 31, 2020, we purchased property and equipment for $9.3 million compared to $14.4 million during the same period in the prior year. In addition, we received proceeds from the sale of property and

33

equipment of $6.9 million during the three months ended March 31, 2020, compared to $4.4 million during the same period in the prior year. We believe the ownership of equipment is generally preferable to renting equipment on a project-by-project basis, as ownership helps to ensure the equipment is available for our projects when needed. In addition, ownership has historically resulted in lower overall equipment costs.

Financing activities

Financing activities used cash of $19.2 million for the three months ended March 31, 2020, which was primarily due to the following:

Repayment of long-term debt of $15.0 million;
Repurchase of common stock of $7.4 million;
Dividend payments to our stockholders of $2.9 million; and
Proceeds from the issuance of debt secured by our real estate of $6.8 million

Financing activities provided cash of $4.7 million for the three months ended March 31, 2019, which was primarily due to the following:

Proceeds from the issuances of debt secured by our equipment of $23.1 million
Proceeds of $1.8 million from the issuance of 114,106 shares of common stock purchased by the participants in the Primoris Long-term Retention Plan
Repayment of long-term debt of $17.2 million;
Dividend payments to our stockholders of $3.0 million;

Credit Agreements

For a description of our credit agreements, see Note 8 — “Credit Arrangements” in Item 1, Financial Statements of this First Quarter 2020 Report.

Common stock

For a discussion of items affecting our common stock, please see Note 14 — “Stockholders’ Equity” in Item 1, Financial Statements of this First Quarter 2020 Report.

Off-balance sheet transactions

We enter into certain off-balance sheet arrangements in the ordinary course of business that result in risks not directly reflected on our balance sheet. We have no off-balance sheet financing arrangement with VIEs. The following represents transactions, obligations or relationships that could be considered material off-balance sheet arrangements.

At March 31, 2020, we had letters of credit outstanding of $40.0 million under the terms of our credit agreements. These letters of credit are used by our insurance carriers to ensure reimbursement for amounts that they are disbursing on our behalf, such as beneficiaries under our self-funded insurance program. In addition, from time to time, certain customers require us to post a letter of credit to ensure payments to our subcontractors or guarantee performance under our contracts. Letters of credit reduce our borrowing availability under our Credit Agreement and Canadian Credit Facility. If these letters of credit were drawn on by the beneficiary, we would be required to reimburse the issuer of the letter of credit, and we may be required to record a charge to earnings for the reimbursement. As of the date of this First Quarter 2020 Report, we do not believe that it is likely that any material claims will be made under a letter of credit;

In the ordinary course of our business, we may be required by our customers to post surety bid or completion bonds in connection with services that we provide. At March 31, 2020, we had $829.0 million in outstanding bonds.  As of the date of this First Quarter 2020 Report, we do not anticipate that we would have to fund material claims under our surety arrangements;

Certain of our subsidiaries are parties to collective bargaining agreements with unions. In most instances, these agreements require that we contribute to multi-employer pension and health and welfare plans. For

34

many plans, the contributions are determined annually and required future contributions cannot be determined since contribution rates depend on the total number of union employees and actuarial calculations based on the demographics of all participants. The Employee Retirement Income Security Act of 1974 (ERISA), as amended by the Multi-Employer Pension Amendments Act of 1980, subjects employers to potential liabilities in the event of an employer’s complete or partial withdrawal of an underfunded multi-employer pension plan. The Pension Protection Act of 2006 added new funding rules for multi-employer plans that are classified as “endangered”, “seriously endangered”, or “critical”. We do not currently anticipate withdrawal from any multi-employer pension plans. Withdrawal liabilities or requirements for increased future contributions could negatively impact our results of operations and liquidity;

We enter into employment agreements with certain employees which provide for compensation and benefits under certain circumstances and which may contain a change of control clause. We may be obligated to make payments under the terms of these agreements; and

From time to time, we make other guarantees, such as guaranteeing the obligations of our subsidiaries.

Effects of Inflation and Changing Prices

Our operations are affected by increases in prices, whether caused by inflation or other economic factors. We attempt to recover anticipated increases in the cost of labor, equipment, fuel and materials through price escalation provisions in certain major contracts or by considering the estimated effect of such increases when bidding or pricing new work or by entering into back-to-back contracts with suppliers and subcontractors. To date, our operations have not been materially impacted by the effects of increases in prices.

Item 3. Quantitative and Qualitative Disclosures About Market Risk

In the ordinary course of business, we are exposed to risks related to market conditions. These risks primarily include fluctuations in foreign currency exchange rates, interest rates and commodity prices. We may seek to manage these risks through the use of financial derivative instruments. These instruments may include foreign currency exchange contracts and interest rate swaps.

Interest rate risk. Our revolving credit facility and term loan bear interest at a variable rate and exposes us to interest rate risk. From time to time, we may use certain derivative instruments to hedge our exposure to variable interest rates. As of March 31, 2020, $150.6 million of our variable rate debt outstanding was economically hedged. Based on our variable rate debt outstanding as of March 31, 2020, a 1.0% increase or decrease in interest rates would change annual interest expense by approximately $0.5 million.

We do not execute transactions or use financial derivative instruments for trading or speculative purposes. We generally enter into transactions with counter parties that are financial institutions as a means to limit significant exposure with any one party.

Item 4. Controls and Procedures

Disclosure Controls and Procedures

As of March 31, 2020, we carried out an evaluation, under the supervision and with the participation of our management, including our Chief Executive Officer (“CEO”) and Chief Financial Officer (“CFO”), of the effectiveness of the design and operation of our “disclosure controls and procedures”, as such term is defined under Exchange Act Rules 13a-15(e) and 15d-15(e).

Based on this evaluation, our CEO and CFO concluded that, at March 31, 2020, the disclosure controls and procedures were effective at the reasonable assurance level to ensure that information required to be disclosed by us in the reports we file or submit under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the rules and forms of the SEC, and accumulated and communicated to our management, including our CEO and CFO, as appropriate to allow timely decisions regarding required disclosure.

In designing and evaluating the disclosure controls and procedures, our management recognized that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving the desired

35

control objectives. In reaching a reasonable level of assurance, our management necessarily was required to apply its judgment in evaluating the cost-benefit relationship of possible controls and procedures. Our disclosure controls and procedures are designed to provide reasonable assurance of achieving their stated objectives.

Changes in Internal Control Over Financial Reporting

There were no changes to our internal control over financial reporting practices or processes that materially affected, or are reasonably likely to materially affect, our internal control over financial reporting during the three months ended March 31, 2020.

Part II. Other Information

Item 1. Legal Proceedings

The information required for this item is provided in Note 16 — “Commitments and Contingencies”, included in the unaudited notes to our condensed consolidated financial statements included under Part I of this Form 10-Q, which is incorporated herein by reference.

Item 1A. Risk Factors.

In addition to the other information set forth in this Report on Form 10-Q, you should carefully consider the factors discussed in Part I, Item 1A entitled “Risk Factors” in our most recently filed Annual Report on Form 10-K for the year ended December 31, 2019, which could materially affect our business, financial condition or future results. The COVID-19 pandemic has heightened, and in some cases manifested, certain of the risks we normally face in operating our business, including those disclosed in our most recently filed Annual Report on Form 10-K, and the risk factor disclosure in the Form 10-K is qualified by the information relating to COVID-19 that is described in this Report, including the updated risk factor set forth below. Except as set forth below or otherwise discussed in this Report, there have been no material changes from the risk factors previously disclosed in our most recently filed Annual Report on Form 10-K.

Our results could be adversely affected by natural disasters, public health crises, political crises, or other catastrophic events.

Natural disasters, such as hurricanes, tornadoes, floods, earthquakes, and other adverse weather and climate conditions; unforeseen public health crises, such as pandemics and epidemics; political crises, such as terrorist attacks, war, labor unrest, and other political instability; or other catastrophic events could disrupt our operations, or the operations of one or more of our vendors or customers, and could adversely affect our financial results. In particular, these types of events could impact our product supply chain from or to the impacted region and could cause our customers to delay or cancel projects, which could impact our ability to operate. In addition, these types of events could lead to general inefficiencies from having to start and stop work, re-sequencing work, requiring on-site health screenings before entering a job site, and following proper social distancing practices.

For example, in December 2019, a novel strain of coronavirus (“COVID-19”) emerged and has since extensively impacted global health and the economic environment. In an effort to contain COVID-19 or slow its spread, governments around the world have also enacted various measures, including orders to close all businesses not deemed “essential”, isolate residents to their homes or places of residence, and practice social distancing when engaging in essential activities. While our services have generally been deemed to be essential services, we have experienced project interruptions and restrictions that have delayed project timelines from those originally planned. In some cases, we have experienced temporary work stoppages, which has led to general inefficiencies from having to start and stop work, re-sequence work, require on-site health screenings before entering a job site, and follow proper social distancing practices. We have also been restricted from completing work or have been prevented from starting work on certain projects. We will continue to actively monitor the situation and may take further actions to alter our business operations that we determine are in the best interests of our employees, customers, suppliers, and stakeholders, or as required by federal, state, or local authorities. We will also continue to monitor our customers and their industries to assess the effect that changes in economic, market and regulatory conditions may have on them. Due to uncertainties regarding the duration and impact of the current COVID-19 pandemic, we are unable to predict the extent to which the COVID-19 pandemic may have a material adverse effect on our business, financial condition or results of operations.

36

Item 2. Unregistered Sales of Equity Securities and Use of Proceeds.

Share repurchase activity during the three months ended March 31, 2020 was as follows:

Average

Total Number of Shares

 

Approximate Dollar Value of

 

Total Number

Price

Purchased as Part of Publicly

 

Shares That May Yet Be Purchased

 

Period

of Shares Purchased

Paid Per Share

Announced Plans or Programs (1)

 

Under the Plans or Programs (1)

 

January 1, 2020 to January 31, 2020

 

 

 

$

 

$

February 1, 2020 to February 29, 2020

25,000,000

March 1, 2020 to March 31, 2020

 

 

461,831

 

$

16.01

 

461,831

17,606,086

Total

 

 

461,831

 

$

17,606,086

______________________________

(1) In February 2020, our Board of Directors authorized a share repurchase program for the repurchase of up to $25.0 million of our outstanding common stock. Under the share repurchase program, we can, depending on market conditions, share price and other factors, acquire shares of our common stock on the open market or in privately negotiated transactions. In March 2020, we purchased an aggregate of 461,831 shares of our Common Stock for an aggregate purchase price of $7.4 million or $16.04 per share. As of March 31, 2020, we have $17.6 million remaining of common stock authorized to be purchased under the share repurchase program. The share repurchase plan expires on December 31, 2020.

Item 6. Exhibits.

The following exhibits are filed as part of this Quarterly Report on Form 10-Q.

Exhibit
Number

    

Description

31.1

Rule 13a-14(a)/15d-14(a) Certification by the Registrant’s Chief Executive Officer (*)

31.2

Rule 13a-14(a)/15d-14(a) Certification by the Registrant’s Chief Financial Officer (*)

32.1

Section 1350 Certification by the Registrant’s Chief Executive Officer (**)

32.2

Section 1350 Certification by the Registrant’s Chief Financial Officer (**)

101 INS

Inline XBRL Instance Document – The instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document (*)

101 SCH

Inline XBRL Taxonomy Extension Schema Document (*)

101 CAL

Inline XBRL Taxonomy Extension Calculation Linkbase Document (*)

101 LAB

Inline XBRL Taxonomy Extension Label Linkbase Document (*)

101 PRE

Inline XBRL Taxonomy Extension Presentation Linkbase Document (*)

101 DEF

Inline XBRL Taxonomy Extension Definition Linkbase Document (*)

104

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

(*)

Filed herewith.

(**)

Furnished herewith.

37

SIGNATURES

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

PRIMORIS SERVICES CORPORATION

Date: May 4, 2020

/s/ Kenneth M. Dodgen

Kenneth M. Dodgen

Executive Vice President, Chief Financial Officer

(Principal Financial Officer)

38

EX-31.1 2 prim-20200331xex31d1.htm EX-31.1 prim_Ex31_1

Exhibit 31.1

 

RULE 13a-14(a)/15d-14(a) CERTIFICATION PURSUANT TO

SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

 

I, Thomas E. McCormick, certify that:

 

1.

I have reviewed this Quarterly Report on Form 10-Q for the period ended March 31, 2020,  of Primoris Services Corporation;

 

2.

Based on my knowledge, this Quarterly Report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this Quarterly Report;

 

3.

Based on my knowledge, the financial statements, and other financial information included in this Quarterly Report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this Quarterly Report;

 

4.

The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a)

Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this Quarterly Report is being prepared;

 

(b)

Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c)

Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this Quarterly Report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this Quarterly Report based on such evaluation; and

 

(d)

Disclosed in this Quarterly Report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

 

5.

The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):

 

(a)

All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and

 

(b)

Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.

 

 

 

Date:  May 4, 2020

 

 

 

/s/ Thomas E. McCormick

 

Thomas E. McCormick

 

President, Chief Executive Officer and Director

 

(Principal Executive Officer)

 

 

1

EX-31.2 3 prim-20200331xex31d2.htm EX-31.2 prim_Ex31_2

Exhibit 31.2

 

RULE 13a-14(a)/15d-14(a) CERTIFICATION PURSUANT TO

SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

 

I, Kenneth M. Dodgen, certify that:

 

1.

I have reviewed this Quarterly Report on Form 10-Q for the period ended March 31, 2020, of Primoris Services Corporation;

 

2.

Based on my knowledge, this Quarterly Report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this Quarterly Report;

 

3.

Based on my knowledge, the financial statements, and other financial information included in this Quarterly Report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this Quarterly Report;

 

4.

The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a)

Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this Quarterly Report is being prepared;

 

(b)

Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c)

Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this Quarterly Report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this Quarterly Report based on such evaluation; and

 

(d)

Disclosed in this Quarterly Report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

 

5.

The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):

 

(a)

All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and

 

(b)

Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.

 

 

 

Date:  May 4, 2020

 

 

 

/s/ Kenneth M. Dodgen

 

Kenneth M. Dodgen

 

Executive Vice President, Chief Financial Officer

 

(Principal Financial Officer)

 

 

1

EX-32.1 4 prim-20200331xex32d1.htm EX-32.1 prim_Ex32_1

Exhibit 32.1

 

Certification Pursuant to Section 906

of the Sarbanes-Oxley Act of 2002 (18 U.S.C. Section 1350)

 

In connection with the Quarterly Report of Primoris Services Corporation (the “Company”) on Form 10-Q for the period ended March 31, 2020, as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, David L. King, Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that, to my knowledge:

 

1.The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and

 

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

 

In witness whereof, the undersigned has executed and delivered this certificate as of the date set forth opposite his signature below.

 

 

 

Date:  May 4, 2020

/s/ Thomas E. McCormick

 

Thomas E. McCormick

 

President, Chief Executive Officer and Director

 

(Principal Executive Officer)

 

1

EX-32.2 5 prim-20200331xex32d2.htm EX-32.2 prim_Ex32_2

Exhibit 32.2

 

Certification Pursuant to Section 906

of the Sarbanes-Oxley Act of 2002 (18 U.S.C. Section 1350)

 

In connection with the Quarterly Report of Primoris Services Corporation (the “Company”) on Form 10-Q for the period ended March 31, 2020, as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Kenneth M. Dodgen, Executive Vice President, Chief Financial Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that, to my knowledge:

 

1.The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and

 

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

 

In witness whereof, the undersigned has executed and delivered this certificate as of the date set forth opposite his signature below.

 

 

 

Date:  May 4, 2020

/s/ Kenneth M. Dodgen

 

Kenneth M. Dodgen

 

Executive Vice President, Chief Financial Officer

 

(Principal Financial Officer)

 

1

EX-101.SCH 6 prim-20200504.xsd EX-101.SCH 00100 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE (LOSS) INCOME link:presentationLink link:calculationLink link:definitionLink 00500 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 40503 - Disclosure - Revenue - Contract assets (Details) link:presentationLink link:calculationLink link:definitionLink 40504 - Disclosure - Revenue - Contract liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 40602 - Disclosure - Goodwill and Intangible Assets - Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 40701 - Disclosure - Accounts Payable and Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 40801 - Disclosure - Credit Arrangements (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - Credit Arrangements (Details) - Cal2 link:presentationLink link:calculationLink link:definitionLink 41301 - Disclosure - Dividends and Earnings Per Share (Details) link:presentationLink link:calculationLink link:definitionLink 41501 - Disclosure - Leases - Components of Lease Expense and Operating Lease Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 00405 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 10101 - Disclosure - Nature of Business link:presentationLink link:calculationLink link:definitionLink 10301 - Disclosure - Recent Accounting Pronouncements link:presentationLink link:calculationLink link:definitionLink 10401 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 10601 - Disclosure - Goodwill and Intangible Assets link:presentationLink link:calculationLink link:definitionLink 10701 - Disclosure - Accounts Payable and Accrued Liabilities link:presentationLink link:calculationLink link:definitionLink 10801 - Disclosure - Credit Arrangements link:presentationLink link:calculationLink link:definitionLink 11001 - Disclosure - Noncontrolling Interests link:presentationLink link:calculationLink link:definitionLink 11101 - Disclosure - Stock-Based Compensation link:presentationLink link:calculationLink link:definitionLink 11201 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 11301 - Disclosure - Dividends and Earnings Per Share link:presentationLink link:calculationLink link:definitionLink 11401 - Disclosure - Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 11601 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 11701 - Disclosure - Reportable Segments link:presentationLink link:calculationLink link:definitionLink 11801 - Disclosure - Subsequent Event link:presentationLink link:calculationLink link:definitionLink 30403 - Disclosure - Fair Value Measurements (Tables) link:presentationLink link:calculationLink link:definitionLink 30603 - Disclosure - Goodwill and Intangible Assets (Tables) link:presentationLink link:calculationLink link:definitionLink 30703 - Disclosure - Accounts Payable and Accrued Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 30803 - Disclosure - Credit Arrangements (Tables) link:presentationLink link:calculationLink link:definitionLink 31003 - Disclosure - Noncontrolling Interests (Tables) link:presentationLink link:calculationLink link:definitionLink 31103 - Disclosure - Stock-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 31303 - Disclosure - Dividends and Earnings Per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 31703 - Disclosure - Reportable Segments (Tables) link:presentationLink link:calculationLink link:definitionLink 40101 - Disclosure - Nature of Business (Details) link:presentationLink link:calculationLink link:definitionLink 40201 - Disclosure - Basis of Presentation (Details) link:presentationLink link:calculationLink link:definitionLink 40401 - Disclosure - Fair Value Measurements (Details) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - Revenue - Performance obligations (Details) link:presentationLink link:calculationLink link:definitionLink 40502 - Disclosure - Revenue - Performance obligations - 2020 (Details) link:presentationLink link:calculationLink link:definitionLink 40502 - Disclosure - Revenue - Performance obligations - 2020 Default (Details) link:presentationLink link:calculationLink link:definitionLink 40505 - Disclosure - Revenue - Disaggregation of revenue by customer type and contract type (Details) link:presentationLink link:calculationLink link:definitionLink 40601 - Disclosure - Goodwill and Intangible Assets - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 40802 - Disclosure - Credit Arrangements - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - Derivative Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 40902 - Disclosure - Derivative Instruments - Derivative contract and instruments (Details) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - Noncontrolling Interests (Details) link:presentationLink link:calculationLink link:definitionLink 41101 - Disclosure - Stock-Based Compensation - Restricted Stock Units (Details) link:presentationLink link:calculationLink link:definitionLink 41201 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 41302 - Disclosure - Dividends and Earnings Per Share - Anti-dilutive shares (Details) link:presentationLink link:calculationLink link:definitionLink 41401 - Disclosure - Stockholders' Equity (Details) link:presentationLink link:calculationLink link:definitionLink 41601 - Disclosure - Commitments and Contingencies - Legal (Details) link:presentationLink link:calculationLink link:definitionLink 41701 - Disclosure - Reportable Segments (Details) link:presentationLink link:calculationLink link:definitionLink 41702 - Disclosure - Reportable Segments - Revenue and Total Assets by Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink 41801 - Disclosure - Subsequent Events (Details) link:presentationLink link:calculationLink link:definitionLink 10201 - Disclosure - Basis of Presentation link:presentationLink link:calculationLink link:definitionLink 10501 - Disclosure - Revenue link:presentationLink link:calculationLink link:definitionLink 10901 - Disclosure - Derivative Instruments link:presentationLink link:calculationLink link:definitionLink 11501 - Disclosure - Leases link:presentationLink link:calculationLink link:definitionLink 30503 - Disclosure - Revenue (Tables) link:presentationLink link:calculationLink link:definitionLink 30903 - Disclosure - Derivative Instruments (Tables) link:presentationLink link:calculationLink link:definitionLink 31503 - Disclosure - Leases (Tables) link:presentationLink link:calculationLink link:definitionLink 41502 - Disclosure - Leases - Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 prim-20200504_cal.xml EX-101.CAL EX-101.DEF 8 prim-20200504_def.xml EX-101.DEF EX-101.LAB 9 prim-20200504_lab.xml EX-101.LAB EX-101.PRE 10 prim-20200504_pre.xml EX-101.PRE XML 11 R9.htm IDEA: XBRL DOCUMENT v3.20.1
Nature of Business
3 Months Ended
Mar. 31, 2020
Nature of Business  
Nature of Business

Note 1—Nature of Business

Organization and operations — Primoris Services Corporation is one of the leading providers of specialty contracting services operating mainly in the United States and Canada. We provide a wide range of specialty construction services, fabrication, maintenance, replacement, and engineering services to a diversified base of customers through our five segments.

We have longstanding customer relationships with major utility, refining, petrochemical, power, midstream, and engineering companies, and state departments of transportation. We provide our services to a diversified base of customers, under a range of contracting options. A substantial portion of our services are provided under Master Service Agreements (“MSA”), which are generally multi-year agreements. The remainder of our services are generated from contracts for specific construction or installation projects.

We are incorporated in the State of Delaware, and our corporate headquarters are located at 2300 N. Field Street, Suite 1900, Dallas, Texas 75201. Unless specifically noted otherwise, as used throughout these consolidated financial statements, “Primoris”, “the Company”, “we”, “our”, “us” or “its” refers to the business, operations and financial results of the Company and its wholly-owned subsidiaries.

Reportable Segments — We segregate our business into five reportable segments: the Power, Industrial and Engineering (“Power”) segment, the Pipeline and Underground (“Pipeline”) segment, the Utilities and Distribution (“Utilities”) segment, the Transmission and Distribution (“Transmission”) segment, and the Civil segment. See Note 17 – “Reportable Segments” for a brief description of the reportable segments and their operations.

The classification of revenue and gross profit for segment reporting purposes can at times require judgment on the part of management. Our segments may perform services across industries or perform joint services for customers in multiple industries. To determine reportable segment gross profit, certain allocations, including allocations of shared and indirect costs, such as facility costs, equipment costs and indirect operating expenses were made.

Joint Ventures — We own a 50% interest in the Carlsbad Power Constructors joint venture (“Carlsbad”), which engineered and constructed a gas-fired power generation facility located in Southern California, and its operations are included as part of the Power segment. As a result of determining that we are the primary beneficiary of the variable interest entity (“VIE”), the results of the Carlsbad joint venture are consolidated in our financial statements. The project was substantially complete as of December 31, 2018, and the warranty period expires in December 2020.

Financial information for the joint ventures is presented in Note 10 – “Noncontrolling Interests”.

XML 12 R63.htm IDEA: XBRL DOCUMENT v3.20.1
Reportable Segments - Revenue and Total Assets by Geographic Area (Details)
3 Months Ended 12 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Dec. 31, 2019
Revenues and total assets by geographic area      
% of Revenue 100.00% 100.00%  
Non-United States      
Revenues and total assets by geographic area      
% of Revenue 4.20% 4.60%  
% of total assets 3.40%   4.40%
XML 13 R5.htm IDEA: XBRL DOCUMENT v3.20.1
CONSOLIDATED STATEMENTS OF COMPREHENSIVE (LOSS) INCOME - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
CONSOLIDATED STATEMENTS OF COMPREHENSIVE (LOSS) INCOME    
Net (loss) income $ (3,734) $ 2,936
Other comprehensive (loss) income, net of tax:    
Foreign currency translation adjustments (1,737) 374
Comprehensive (loss) income (5,471) 3,310
Less net income attributable to noncontrolling interests (3) (989)
Comprehensive (loss) income attributable to Primoris $ (5,474) $ 2,321
XML 14 R1.htm IDEA: XBRL DOCUMENT v3.20.1
Document and Entity Information - shares
3 Months Ended
Mar. 31, 2020
Apr. 27, 2020
Document and Entity Information    
Document Type 10-Q  
Document Quarterly Report true  
Document Transition Report false  
Document Period End Date Mar. 31, 2020  
Entity File Number 001-34145  
Entity Registrant Name Primoris Services Corporation  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 20-4743916  
Entity Address, Address Line One 2300 N. Field Street, Suite 1900  
Entity Address, City or Town Dallas  
Entity Address, State or Province TX  
Entity Address, Postal Zip Code 75201  
City Area Code 214  
Local Phone Number 740-5600  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Large Accelerated Filer  
Entity Small Business false  
Entity Emerging Growth Company false  
Entity Shell Company false  
Title of 12(b) Security Common Stock  
Trading Symbol PRIM  
Security Exchange Name NASDAQ  
Entity Common Stock, Shares Outstanding   48,260,436
Entity Central Index Key 0001361538  
Current Fiscal Year End Date --12-31  
Document Fiscal Year Focus 2020  
Document Fiscal Period Focus Q1  
Amendment Flag false  
XML 15 R40.htm IDEA: XBRL DOCUMENT v3.20.1
Fair Value Measurements (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Dec. 31, 2019
Jun. 30, 2019
Assets      
Contingent consideration     $ 900
Change in contingent consideration $ 0    
Contingent consideration      
Earnout     $ 2,000
Recurring | Quoted Prices in Active Markets for Identical Assets (Level 1)      
Assets      
Cash and cash equivalents 93,474 $ 120,286  
Recurring | Significant Unobservable Inputs (Level 3)      
Assets      
Contingent consideration 938 938  
Recurring | Interest rate swap | Significant Other Observable Inputs (Level2)      
Liabilities      
Derivative liability $ 11,414 $ 6,443  
XML 16 R44.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue - Contract liabilities (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Dec. 31, 2019
Revenue    
Deferred revenue $ 171,553 $ 186,081
Accrued loss provision 5,294 6,316
Contract liabilities 176,847 $ 192,397
Decrease in contract liabilities (15,600)  
Revenue recognized included in contract liability at beginning of period $ 97,900  
XML 17 R48.htm IDEA: XBRL DOCUMENT v3.20.1
Accounts Payable and Accrued Liabilities (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Accounts Payable and Accrued Liabilities    
Retention amounts included in accounts payable $ 10,900 $ 11,300
Accrued liabilities    
Payroll and related employee benefits 74,008 64,705
Current operating lease liability 79,532 74,036
Casualty insurance reserves 9,902 9,918
Corporate income taxes and other taxes 6,822 9,027
Other 22,384 25,815
Total accrued liabilities $ 192,648 $ 183,501
XML 18 R29.htm IDEA: XBRL DOCUMENT v3.20.1
Goodwill and Intangible Assets (Tables)
3 Months Ended
Mar. 31, 2020
Goodwill and Intangible Assets  
Schedule of goodwill by reporting unit

The carrying amount of goodwill by reportable segment is as follows (in thousands):

March 31, 

December 31, 

 

Reporting Segment

    

2020

    

2019

 

Power

 

$

26,194

$

26,194

Pipeline

 

 

52,415

 

52,415

Utilities

 

 

37,312

 

37,312

Transmission

59,032

59,032

Civil

 

 

40,150

 

40,150

Total Goodwill

$

215,103

$

215,103

Summary of intangible asset categories, amounts and the average amortization periods

The table below summarizes the intangible asset categories, amounts and the average amortization periods, which are on a straight-line basis (in thousands):

March 31, 2020

December 31, 2019

    

Weighted
Average Life

    

Gross Carrying
Amount

    

Accumulated
Amortization

    

Intangible assets, net

    

Gross Carrying
Amount

    

Accumulated
Amortization

    

Intangible assets, net

 

Tradename

9 years

$

16,040

(13,714)

2,326

$

16,040

$

(13,216)

$

2,824

Customer relationships

 

17 years

 

91,000

(26,128)

64,872

 

91,000

 

(24,353)

 

66,647

Non-compete agreements

5 years

 

1,900

(1,653)

247

 

1,900

 

(1,580)

 

320

Other

3 years

275

(260)

15

275

(237)

38

Total

 

16 years

$

109,215

$

(41,755)

$

67,460

$

109,215

$

(39,386)

$

69,829

Schedule of estimated future amortization expense for intangible assets Estimated future amortization expense for intangible assets is as follows (in thousands):

Estimated

 

Intangible

 

Amortization

 

For the Years Ending December 31, 

    

Expense

 

2020 (remaining nine months)

$

6,448

2021

7,577

2022

 

6,416

2023

 

5,581

2024

 

4,862

Thereafter

 

36,576

$

67,460

XML 19 R25.htm IDEA: XBRL DOCUMENT v3.20.1
Reportable Segments
3 Months Ended
Mar. 31, 2020
Reportable Segments  
Reportable Segments

Note 17—Reportable Segments

We segregate our business into five reportable segments: the Power segment, the Pipeline segment, the Utilities segment, the Transmission segment, and the Civil segment. Each of our reportable segments is comprised of similar business units that specialize in services unique to the segment. Driving the end-user focused segments are differences in the economic characteristics of each segment, the nature of the services provided by each segment; the production processes of each segment; the type or class of customer using the segment’s services; the methods used by the segment to provide the services; and the regulatory environment of each segment’s customers.

The classification of revenue and gross profit for segment reporting purposes can at times require judgment on the part of management. Our segments may perform services across industries or perform joint services for customers in multiple industries. To determine reportable segment gross profit, certain allocations, including allocations of shared and indirect costs, such as facility costs, equipment costs and indirect operating expenses, were made.

The following is a brief description of the reportable segments:

The Power segment operates throughout the United States and in Canada and specializes in a range of services that include engineering, procurement, and construction, retrofits, upgrades, repairs, outages, and maintenance services for entities in the petroleum and petrochemical industries, as well as traditional and renewable power generators.

The Pipeline segment operates throughout the United States and specializes in a range of services, including pipeline construction and maintenance, pipeline facility and integrity services, installation of compressor and pump stations, and metering facilities for entities in the petroleum and petrochemical industries, as well as gas, water, and sewer utilities.

The Utilities segment operates primarily in California, the Midwest, the Atlantic Coast, and the Southeast regions of the United States and specializes in a range of services, including installation and maintenance of new and existing natural gas utility distribution systems and pipeline integrity services for entities in the gas utility market.

The Transmission segment operates primarily in the Southeastern, Midwest, Atlantic Coast, and Gulf Coast regions of the United States and specializes in a range of services, including installation and maintenance of new and existing electric utility transmission, substation, and distribution systems for entities in the electric utility market.

The Civil segment operates primarily in the Southeastern and Gulf Coast regions of the United States and specializes in highway and bridge construction, airport runway construction, demolition, site work, soil stabilization, mass excavation, flood control, and drainage projects for entities in the petroleum and petrochemical industries, state and municipal departments of transportation, and airports.

All intersegment revenue and gross profit, which was immaterial, has been eliminated in the following tables. Total assets by segment is not presented as our Chief Operating Decision Maker as defined by ASC 280 does not review or allocate resources based on segment assets.

Segment Revenue

Revenue by segment was as follows (in thousands):

For the three months ended March 31, 

2020

2019

% of

% of

Total

Total

Segment

    

Revenue

    

Revenue

    

Revenue

    

Revenue

Power

$

196,193

 

26.4%

$

145,383

 

22.0%

Pipeline

191,523

25.8%

134,814

20.4%

Utilities

 

147,170

 

19.8%

 

146,206

 

22.1%

Transmission

102,784

13.8%

118,443

17.9%

Civil

 

105,573

 

14.2%

 

116,712

 

17.6%

Total

$

743,243

 

100.0%

$

661,558

 

100.0%

Segment Gross Profit

Gross profit by segment was as follows (in thousands):

For the three months ended March 31, 

2020

2019

    

    

% of

    

    

% of

Segment

Segment

Segment

Gross Profit

Revenue

Gross Profit

Revenue

Power

$

18,682

 

9.5%

$

20,198

 

13.9%

Pipeline

16,492

8.6%

15,016

11.1%

Utilities

 

4,602

 

3.1%

 

8,241

 

5.6%

Transmission

1,712

1.7%

6,628

5.6%

Civil

 

6,322

 

6.0%

 

2,377

 

2.0%

Total

$

47,810

 

6.4%

$

52,460

 

7.9%

Segment Goodwill

The amount of goodwill recorded by each segment at March 31, 2020 and at December 31, 2019 is presented in Note 6 – “Goodwill and Intangible Assets”.

Geographic Region — Revenue and Total Assets

The majority of our revenue is derived from customers in the United States with approximately 4.2% and 4.6% generated from sources outside of the United States during the three months ended March 31, 2020 and 2019, respectively, principally in Canada. At March 31, 2020 and December 31, 2019, approximately 3.4% and 4.4%, respectively, of total assets were located outside of the United States, principally in Canada.

XML 20 R21.htm IDEA: XBRL DOCUMENT v3.20.1
Dividends and Earnings Per Share
3 Months Ended
Mar. 31, 2020
Dividends and Earnings Per Share  
Dividends and Earnings Per Share

Note 13—Dividends and Earnings Per Share

We paid cash dividends during 2020 and 2019 as follows:

Declaration Date

    

Record Date

    

Date Paid

    

Amount Per Share

November 2, 2018

December 31, 2018

January 15, 2019

0.060

February 26, 2019

March 29, 2019

April 15, 2019

0.060

May 3, 2019

June 28, 2019

July 15, 2019

0.060

August 2, 2019

September 30, 2019

October 15, 2019

0.060

October 31, 2019

December 31, 2019

January 15, 2020

0.060

February 21, 2020

March 31, 2020

April 15, 2020

0.060

The payment of future dividends is contingent upon our revenue and earnings, capital requirements and our general financial condition, as well as contractual restrictions and other considerations deemed relevant by the Board of Directors.

The table below presents the computation of basic and diluted (loss) earnings per share for the three months ended March 31, 2020 and 2019 (in thousands, except per share amounts).

Three Months Ended March 31, 

    

2020

    

2019

 

Numerator:

Net (loss) income attributable to Primoris

$

(3,737)

$

1,947

Denominator:

Weighted average shares for computation of basic earnings per share

 

48,588

 

50,770

Dilutive effect of shares issued to independent directors (1)

 

 

8

Dilutive effect of restricted stock units (1)

 

 

410

Weighted average shares for computation of diluted (loss) earnings per share

 

48,588

 

51,188

(Loss) earnings per share attributable to Primoris:

Basic

$

(0.08)

$

0.04

Diluted

$

(0.08)

$

0.04

(1)The dilutive effect of shares issued to independent directors and restricted stock units of 9 and 300, respectively, for the three months ended March 31, 2020, were excluded from the weighted average diluted shares outstanding for the three months ended March 31, 2020, as their inclusion would be anti-dilutive.
XML 21 prim-20200504x10q_htm.xml IDEA: XBRL DOCUMENT 0001361538 2020-02-29 0001361538 us-gaap:CommonStockMember 2020-01-01 2020-03-31 0001361538 prim:EquityIncentivePlan2013Member 2020-01-01 2020-03-31 0001361538 us-gaap:CommonStockMember 2019-01-01 2019-03-31 0001361538 prim:EquityIncentivePlan2013Member 2019-01-01 2019-03-31 0001361538 us-gaap:RetainedEarningsMember 2020-03-31 0001361538 us-gaap:NoncontrollingInterestMember 2020-03-31 0001361538 us-gaap:AdditionalPaidInCapitalMember 2020-03-31 0001361538 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-03-31 0001361538 us-gaap:RetainedEarningsMember 2019-12-31 0001361538 us-gaap:NoncontrollingInterestMember 2019-12-31 0001361538 us-gaap:AdditionalPaidInCapitalMember 2019-12-31 0001361538 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-12-31 0001361538 us-gaap:RetainedEarningsMember 2019-03-31 0001361538 us-gaap:NoncontrollingInterestMember 2019-03-31 0001361538 us-gaap:AdditionalPaidInCapitalMember 2019-03-31 0001361538 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-03-31 0001361538 us-gaap:RetainedEarningsMember 2018-12-31 0001361538 us-gaap:NoncontrollingInterestMember 2018-12-31 0001361538 us-gaap:AdditionalPaidInCapitalMember 2018-12-31 0001361538 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2018-12-31 0001361538 us-gaap:CommonStockMember 2020-03-31 0001361538 us-gaap:CommonStockMember 2019-12-31 0001361538 us-gaap:CommonStockMember 2019-03-31 0001361538 us-gaap:CommonStockMember 2018-12-31 0001361538 srt:ExecutiveOfficerMember us-gaap:RestrictedStockUnitsRSUMember prim:EquityIncentivePlan2013Member 2013-05-01 2019-09-30 0001361538 2020-04-01 2020-03-31 0001361538 us-gaap:FixedPriceContractMember prim:UtilityTransmissionAndDistributionMember 2020-01-01 2020-03-31 0001361538 us-gaap:FixedPriceContractMember prim:UAndDSegmentMember 2020-01-01 2020-03-31 0001361538 us-gaap:FixedPriceContractMember prim:PIAndESegmentMember 2020-01-01 2020-03-31 0001361538 us-gaap:FixedPriceContractMember prim:PAndUSegmentMember 2020-01-01 2020-03-31 0001361538 us-gaap:FixedPriceContractMember prim:CivilSegmentMember 2020-01-01 2020-03-31 0001361538 prim:UnitPriceContractsMember prim:UtilityTransmissionAndDistributionMember 2020-01-01 2020-03-31 0001361538 prim:UnitPriceContractsMember prim:UAndDSegmentMember 2020-01-01 2020-03-31 0001361538 prim:UnitPriceContractsMember prim:PIAndESegmentMember 2020-01-01 2020-03-31 0001361538 prim:UnitPriceContractsMember prim:PAndUSegmentMember 2020-01-01 2020-03-31 0001361538 prim:UnitPriceContractsMember prim:CivilSegmentMember 2020-01-01 2020-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:UtilityTransmissionAndDistributionMember 2020-01-01 2020-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:UAndDSegmentMember 2020-01-01 2020-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:PIAndESegmentMember 2020-01-01 2020-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:PAndUSegmentMember 2020-01-01 2020-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:CivilSegmentMember 2020-01-01 2020-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:UtilityTransmissionAndDistributionMember 2020-01-01 2020-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:UAndDSegmentMember 2020-01-01 2020-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:PIAndESegmentMember 2020-01-01 2020-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:PAndUSegmentMember 2020-01-01 2020-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:CivilSegmentMember 2020-01-01 2020-03-31 0001361538 prim:CostReimbursableContractsMember prim:UtilityTransmissionAndDistributionMember 2020-01-01 2020-03-31 0001361538 prim:CostReimbursableContractsMember prim:UAndDSegmentMember 2020-01-01 2020-03-31 0001361538 prim:CostReimbursableContractsMember prim:PIAndESegmentMember 2020-01-01 2020-03-31 0001361538 prim:CostReimbursableContractsMember prim:PAndUSegmentMember 2020-01-01 2020-03-31 0001361538 prim:CostReimbursableContractsMember prim:CivilSegmentMember 2020-01-01 2020-03-31 0001361538 us-gaap:FixedPriceContractMember 2020-01-01 2020-03-31 0001361538 prim:UnitPriceContractsMember 2020-01-01 2020-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember 2020-01-01 2020-03-31 0001361538 prim:MasterServiceAgreementCustomersMember 2020-01-01 2020-03-31 0001361538 prim:CostReimbursableContractsMember 2020-01-01 2020-03-31 0001361538 us-gaap:FixedPriceContractMember prim:UtilityTransmissionAndDistributionMember 2019-01-01 2019-03-31 0001361538 us-gaap:FixedPriceContractMember prim:UAndDSegmentMember 2019-01-01 2019-03-31 0001361538 us-gaap:FixedPriceContractMember prim:PIAndESegmentMember 2019-01-01 2019-03-31 0001361538 us-gaap:FixedPriceContractMember prim:PAndUSegmentMember 2019-01-01 2019-03-31 0001361538 us-gaap:FixedPriceContractMember prim:CivilSegmentMember 2019-01-01 2019-03-31 0001361538 prim:UnitPriceContractsMember prim:UtilityTransmissionAndDistributionMember 2019-01-01 2019-03-31 0001361538 prim:UnitPriceContractsMember prim:UAndDSegmentMember 2019-01-01 2019-03-31 0001361538 prim:UnitPriceContractsMember prim:PIAndESegmentMember 2019-01-01 2019-03-31 0001361538 prim:UnitPriceContractsMember prim:PAndUSegmentMember 2019-01-01 2019-03-31 0001361538 prim:UnitPriceContractsMember prim:CivilSegmentMember 2019-01-01 2019-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:UtilityTransmissionAndDistributionMember 2019-01-01 2019-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:UAndDSegmentMember 2019-01-01 2019-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:PIAndESegmentMember 2019-01-01 2019-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:PAndUSegmentMember 2019-01-01 2019-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember prim:CivilSegmentMember 2019-01-01 2019-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:UtilityTransmissionAndDistributionMember 2019-01-01 2019-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:UAndDSegmentMember 2019-01-01 2019-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:PIAndESegmentMember 2019-01-01 2019-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:PAndUSegmentMember 2019-01-01 2019-03-31 0001361538 prim:MasterServiceAgreementCustomersMember prim:CivilSegmentMember 2019-01-01 2019-03-31 0001361538 prim:CostReimbursableContractsMember prim:UtilityTransmissionAndDistributionMember 2019-01-01 2019-03-31 0001361538 prim:CostReimbursableContractsMember prim:UAndDSegmentMember 2019-01-01 2019-03-31 0001361538 prim:CostReimbursableContractsMember prim:PIAndESegmentMember 2019-01-01 2019-03-31 0001361538 prim:CostReimbursableContractsMember prim:PAndUSegmentMember 2019-01-01 2019-03-31 0001361538 prim:CostReimbursableContractsMember prim:CivilSegmentMember 2019-01-01 2019-03-31 0001361538 us-gaap:FixedPriceContractMember 2019-01-01 2019-03-31 0001361538 prim:UnitPriceContractsMember 2019-01-01 2019-03-31 0001361538 prim:NonMasterServiceAgreementCustomersMember 2019-01-01 2019-03-31 0001361538 prim:MasterServiceAgreementCustomersMember 2019-01-01 2019-03-31 0001361538 prim:CostReimbursableContractsMember 2019-01-01 2019-03-31 0001361538 us-gaap:NoncontrollingInterestMember 2020-01-01 2020-03-31 0001361538 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-01-01 2020-03-31 0001361538 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-01-01 2019-03-31 0001361538 prim:CarlsbadConstructorsJointVentureMember 2020-01-01 2020-03-31 0001361538 prim:CarlsbadConstructorsJointVentureMember 2019-01-01 2019-03-31 0001361538 prim:CarlsbadConstructorsJointVentureMember 2020-03-31 0001361538 us-gaap:NoncontrollingInterestMember 2019-01-01 2019-03-31 0001361538 us-gaap:MortgagesMember 2020-03-31 0001361538 us-gaap:LoansPayableMember 2020-03-31 0001361538 us-gaap:MortgagesMember 2019-12-31 0001361538 us-gaap:LoansPayableMember 2019-12-31 0001361538 prim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember 2020-03-31 0001361538 us-gaap:LoansPayableMember 2020-03-31 0001361538 prim:CreditFacilityWithCanadianBankMember 2020-03-31 0001361538 prim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember us-gaap:RevolvingCreditFacilityMember 2020-03-31 0001361538 prim:CanadianCreditFacilityCibcMember 2020-03-31 0001361538 prim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember us-gaap:LetterOfCreditMember 2020-03-31 0001361538 prim:CreditFacilityWithCanadianBankMember us-gaap:LetterOfCreditMember 2020-03-31 0001361538 srt:MaximumMember 2020-03-31 0001361538 prim:UtilityTransmissionAndDistributionMember 2020-03-31 0001361538 prim:UAndDSegmentMember 2020-03-31 0001361538 prim:PIAndESegmentMember 2020-03-31 0001361538 prim:PAndUSegmentMember 2020-03-31 0001361538 prim:CivilSegmentMember 2020-03-31 0001361538 prim:UtilityTransmissionAndDistributionMember 2019-03-31 0001361538 prim:UAndDSegmentMember 2019-03-31 0001361538 prim:PIAndESegmentMember 2019-03-31 0001361538 prim:PAndUSegmentMember 2019-03-31 0001361538 prim:CivilSegmentMember 2019-03-31 0001361538 us-gaap:TradeNamesMember 2020-01-01 2020-03-31 0001361538 us-gaap:OtherIntangibleAssetsMember 2020-01-01 2020-03-31 0001361538 us-gaap:NoncompeteAgreementsMember 2020-01-01 2020-03-31 0001361538 us-gaap:CustomerRelationshipsMember 2020-01-01 2020-03-31 0001361538 us-gaap:TradeNamesMember 2020-03-31 0001361538 us-gaap:OtherIntangibleAssetsMember 2020-03-31 0001361538 us-gaap:NoncompeteAgreementsMember 2020-03-31 0001361538 us-gaap:CustomerRelationshipsMember 2020-03-31 0001361538 us-gaap:TradeNamesMember 2019-12-31 0001361538 us-gaap:OtherIntangibleAssetsMember 2019-12-31 0001361538 us-gaap:NoncompeteAgreementsMember 2019-12-31 0001361538 us-gaap:CustomerRelationshipsMember 2019-12-31 0001361538 us-gaap:InterestRateSwapMember us-gaap:InterestExpenseMember 2020-01-01 2020-03-31 0001361538 us-gaap:InterestRateSwapMember us-gaap:InterestExpenseMember 2019-01-01 2019-03-31 0001361538 us-gaap:InterestRateSwapMember 2020-03-31 0001361538 us-gaap:InterestRateSwapMember 2019-12-31 0001361538 us-gaap:InterestRateSwapMember 2018-09-13 0001361538 us-gaap:OtherNoncurrentLiabilitiesMember us-gaap:InterestRateSwapMember 2020-03-31 0001361538 us-gaap:OtherNoncurrentLiabilitiesMember us-gaap:InterestRateSwapMember 2019-12-31 0001361538 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2020-03-31 0001361538 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2019-12-31 0001361538 prim:CommercialEquipmentFinancingDueJune2018ToAugust2022Member 2020-03-31 0001361538 prim:CommercialEquipmentFinancingDueJune2018ToAugust2022Member 2019-12-31 0001361538 us-gaap:SubsequentEventMember 2020-05-01 2020-05-01 0001361538 2020-02-22 2020-02-22 0001361538 2019-10-31 2019-10-31 0001361538 2019-08-02 2019-08-02 0001361538 2019-05-03 2019-05-03 0001361538 2019-02-26 2019-02-26 0001361538 2018-11-02 2018-11-02 0001361538 2019-03-31 0001361538 2018-12-31 0001361538 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2020-03-31 0001361538 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2019-12-31 0001361538 prim:CarlsbadConstructorsJointVentureMember 2020-03-31 0001361538 us-gaap:RestrictedStockUnitsRSUMember 2020-01-01 2020-03-31 0001361538 prim:EquityIncentivePlan2013Member 2020-01-01 2020-03-31 0001361538 us-gaap:RestrictedStockUnitsRSUMember prim:EquityIncentivePlan2013Member 2020-01-01 2020-03-31 0001361538 us-gaap:RestrictedStockUnitsRSUMember prim:EquityIncentivePlan2013Member 2019-01-01 2019-03-31 0001361538 prim:CarlsbadConstructorsJointVentureMember 2019-12-31 0001361538 prim:NonUnitedStatesMember 2019-01-01 2019-12-31 0001361538 us-gaap:RestrictedStockUnitsRSUMember prim:EquityIncentivePlan2013Member us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2020-03-31 0001361538 us-gaap:RestrictedStockUnitsRSUMember prim:EquityIncentivePlan2013Member us-gaap:ShareBasedCompensationAwardTrancheThreeMember 2020-03-31 0001361538 us-gaap:RestrictedStockUnitsRSUMember prim:EquityIncentivePlan2013Member us-gaap:ShareBasedCompensationAwardTrancheOneMember 2020-03-31 0001361538 us-gaap:RestrictedStockUnitsRSUMember prim:EquityIncentivePlan2013Member prim:ShareBasedCompensationAwardTrancheFourMember 2020-03-31 0001361538 2020-04-01 2020-01-01 2020-03-31 0001361538 prim:NonUnitedStatesMember 2020-01-01 2020-03-31 0001361538 prim:NonUnitedStatesMember 2019-01-01 2019-03-31 0001361538 prim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember 2020-01-01 2020-03-31 0001361538 prim:NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMember srt:MaximumMember prim:JamesConstructionGroupLLCMember 2015-02-25 2015-02-25 0001361538 prim:NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMember prim:JamesConstructionGroupLLCMember 2020-01-01 2020-03-31 0001361538 prim:NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMember prim:JamesConstructionGroupLLCMember 2015-02-25 2015-02-25 0001361538 prim:NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMember prim:JamesConstructionGroupLLCMember 2020-03-31 0001361538 prim:UtilityTransmissionAndDistributionMember 2020-01-01 2020-03-31 0001361538 prim:UAndDSegmentMember 2020-01-01 2020-03-31 0001361538 prim:PIAndESegmentMember 2020-01-01 2020-03-31 0001361538 prim:PAndUSegmentMember 2020-01-01 2020-03-31 0001361538 prim:CivilSegmentMember 2020-01-01 2020-03-31 0001361538 prim:UtilityTransmissionAndDistributionMember 2019-01-01 2019-03-31 0001361538 prim:UAndDSegmentMember 2019-01-01 2019-03-31 0001361538 prim:PIAndESegmentMember 2019-01-01 2019-03-31 0001361538 prim:PAndUSegmentMember 2019-01-01 2019-03-31 0001361538 prim:CivilSegmentMember 2019-01-01 2019-03-31 0001361538 2019-01-01 2019-03-31 0001361538 us-gaap:RetainedEarningsMember 2020-01-01 2020-03-31 0001361538 us-gaap:AdditionalPaidInCapitalMember 2020-01-01 2020-03-31 0001361538 us-gaap:RetainedEarningsMember 2019-01-01 2019-03-31 0001361538 us-gaap:AdditionalPaidInCapitalMember 2019-01-01 2019-03-31 0001361538 prim:LongTermRetentionPlanMember 2020-01-01 2020-03-31 0001361538 prim:LongTermRetentionPlanMember 2019-01-01 2019-03-31 0001361538 srt:MinimumMember prim:CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember 2020-01-01 2020-03-31 0001361538 2020-03-31 0001361538 2019-12-31 0001361538 us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember 2020-03-31 0001361538 us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember 2019-12-31 0001361538 2019-06-30 0001361538 prim:TopTenCustomersMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-03-31 0001361538 prim:TopTenCustomersMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2019-01-01 2019-03-31 0001361538 prim:PipelineCustomerMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-03-31 0001361538 us-gaap:SuretyBondMember 2020-03-31 0001361538 us-gaap:SuretyBondMember 2019-12-31 0001361538 us-gaap:InterestRateSwapMember 2018-09-13 2018-09-13 0001361538 us-gaap:RestrictedStockUnitsRSUMember prim:EquityIncentivePlan2013Member 2020-03-31 0001361538 prim:EquityIncentivePlan2013Member 2020-03-31 0001361538 2020-04-27 0001361538 2020-01-01 2020-03-31 shares pure iso4217:USD prim:item prim:customer prim:instrument iso4217:USD shares iso4217:CAD prim:segment 0001361538 --12-31 2020 Q1 false 0 0 0 0 48665138 48254575 P12M us-gaap:AccruedLiabilitiesCurrent us-gaap:OperatingLeaseLiabilityNoncurrent 10-Q true 2020-03-31 false 001-34145 Primoris Services Corporation DE 20-4743916 2300 N. Field Street, Suite 1900 Dallas TX 75201 214 740-5600 Common Stock PRIM NASDAQ Yes Yes Large Accelerated Filer false false false 48260436 93474000 120286000 416412000 404911000 359370000 344806000 47409000 42704000 916665000 912707000 363993000 375888000 253117000 242385000 1090000 1100000 67460000 69829000 215103000 215103000 17675000 13453000 1835103000 1830465000 258962000 235972000 176847000 192397000 192648000 183501000 2895000 2919000 52430000 55659000 683782000 670448000 290749000 295642000 176546000 171225000 17820000 17819000 50762000 45801000 1219659000 1200935000 0.0001 0.0001 90000000 90000000 48254575 48665138 5000 5000 91414000 97130000 524655000 531291000 -1661000 76000 1031000 1028000 615444000 629530000 1835103000 1830465000 743243000 661558000 695433000 609098000 47810000 52460000 44388000 42931000 3422000 9529000 136000 -185000 12000 -370000 281000 349000 9112000 5592000 -5261000 3731000 -1527000 795000 -3734000 2936000 3000 989000 -3737000 1947000 0.06 0.06 -0.08 0.04 -0.08 0.04 48588000 50770000 48588000 51188000 -3734000 2936000 -1737000 374000 -5471000 3310000 3000 989000 -5474000 2321000 48665138 5000 97130000 531291000 76000 1028000 629530000 -3737000 3000 -3734000 -1737000 -1737000 51268 1174000 1174000 499000 499000 4000 -4000 461831 7393000 7393000 0.06 2895000 2895000 48254575 5000 91414000 524655000 -1661000 1031000 615444000 50715518 5000 144048000 461075000 -908000 2763000 606983000 1947000 989000 2936000 374000 374000 127384 2661000 2661000 487000 487000 12000 -12000 5000 5000 0.06 3051000 3051000 50842902 5000 147208000 459959000 -534000 3747000 610385000 -3734000 2936000 19797000 21700000 499000 487000 2311000 2217000 -4970000 -1447000 1821000 80000 13911000 24722000 15682000 2328000 4849000 2231000 -204000 -182000 23934000 -59198000 -15389000 2590000 -119000 1447000 -179000 -9663000 -756000 288000 -5467000 -72096000 9311000 14377000 6902000 4398000 -2409000 -9979000 40000000 40000000 6800000 23105000 14976000 17170000 578000 1804000 7393000 2919000 3043000 -1285000 -26000 -19195000 4670000 259000 327000 -26812000 -77078000 120286000 151063000 93474000 73985000 4061000 4065000 -369000 -707000 34711000 8847000 2895000 3051000 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 1—Nature of Business</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Organization and operations — </span>Primoris Services Corporation is one of the leading providers of specialty contracting services operating mainly in the United States and Canada. We provide a wide range of specialty construction services, fabrication, maintenance, replacement, and engineering services to a diversified base of customers through our five segments. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We have longstanding customer relationships with major utility, refining, petrochemical, power, midstream, and engineering companies, and state departments of transportation. We provide our services to a diversified base of customers, under a range of contracting options. A substantial portion of our services are provided under Master Service Agreements (“MSA”), which are generally multi-year agreements. The remainder of our services are generated from contracts for specific construction or installation projects. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We are incorporated in the State of Delaware, and our corporate headquarters are located at 2300 N. Field Street, Suite 1900, Dallas, Texas 75201. Unless specifically noted otherwise, as used throughout these consolidated financial statements, “Primoris”, “the Company”, “we”, “our”, “us” or “its” refers to the business, operations and financial results of the Company and its wholly-owned subsidiaries.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Reportable Segments </span>— We segregate our business into five<span style="white-space:pre-wrap;"> reportable segments: the Power, Industrial and Engineering (“Power”) segment, the Pipeline and Underground (“Pipeline”) segment, the Utilities and Distribution (“Utilities”) segment, the Transmission and Distribution (“Transmission”) segment, and the Civil segment. See Note 17 – “</span><i style="font-style:italic;">Reportable Segments</i>” for a brief description of the reportable segments and their operations.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The classification of revenue and gross profit for segment reporting purposes can at times require judgment on the part of management. Our segments may perform services across industries or perform joint services for customers in multiple industries. To determine reportable segment gross profit, certain allocations, including allocations of shared and indirect costs, such as facility costs, equipment costs and indirect operating expenses were made.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Joint Ventures </span>— We own a 50<span style="white-space:pre-wrap;">% interest in the Carlsbad Power Constructors joint venture (“Carlsbad”), which engineered and constructed a gas-fired power generation facility located in Southern California, and its operations are included as part of the Power segment. As a result of determining that we are the primary beneficiary of the variable interest entity (“VIE”), the results of the Carlsbad joint venture are consolidated in our financial statements. The project was substantially complete as of December 31, 2018, and the warranty period expires in December 2020. </span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Financial information for the joint ventures is presented in Note 10 – <i style="font-style:italic;">“Noncontrolling Interests</i>”. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 5 5 0.50 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 2—Basis of Presentation</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Interim condensed consolidated financial statements</span> <b style="font-weight:bold;">—</b> The interim condensed consolidated financial statements for the three month period ended March 31, 2020 and 2019 have been prepared in accordance with Rule 10-01 of Regulation S-X of the Securities Exchange Act of 1934, as amended (the “Exchange Act”). As such, certain disclosures, which would substantially duplicate the disclosures contained in our Annual Report on Form 10-K, filed on February 24, 2020, which contains our audited consolidated financial statements for the year ended December 31, 2019, have been omitted. </p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">This Form 10-Q should be read in conjunction with our most recent Annual Report on Form 10-K. The interim financial information is unaudited.  In the opinion of management, the interim information includes all adjustments (consisting of normal recurring adjustments) necessary for the fair presentation of the interim financial information. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Customer concentration</span> — We operate in multiple industry segments encompassing the construction of commercial, industrial and public works infrastructure assets primarily throughout the United States. Typically, the top ten customers in any one calendar year generate revenue that is approximately 50% of total revenue; however, the group that comprises the top ten customers varies from year to year. For the three months ended March 31, 2020 and 2019, </p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">approximately 50.1% and 49.1%, respectively, of total revenue was generated from our top ten customers. For the three months ended March 31, 2020, one pipeline customer represented approximately 11.3% of total revenue and for the three months ended March 31, 2019 no one single customer represented greater than 10.0% of total revenue.</p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 10 1 0.50 10 0.501 0.491 10 10 1 0.113 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 3—Recent Accounting Pronouncements</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><b style="font-weight:bold;">Recently adopted accounting pronouncements</b></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">In June 2016, the FASB issued ASU 2016-13, “Financial Instruments—Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments”, which introduced an expected credit loss methodology for the measurement and recognition of credit losses on most financial assets, including trade accounts receivables. The expected credit loss methodology under ASU 2016-13 is based on historical experience, current conditions and reasonable and supportable forecasts, and replaces the probable/incurred loss model for measuring and recognizing expected losses under current GAAP. The ASU also requires disclosure of information regarding how a company developed its allowance, including changes in the factors that influenced management’s estimate of expected credit losses and the reasons for those changes. The ASU and its related clarifying updates are effective for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted. We adopted the new standard on January 1, 2020, and it did not have a material impact on our estimate of the allowance for uncollectable accounts.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">In August 2018, the FASB issued ASU 2018-13, “<i style="font-style:italic;">Fair Value Measurement (Topic 820): Disclosure Framework—Changes to the Disclosure Requirements for Fair Value Measurement</i>”, which eliminates certain disclosure requirements for recurring and nonrecurring fair value measurements. The ASU eliminates such disclosures as the amount of and reasons for transfers between Level 1 and Level 2 of the fair value hierarchy, and adds new disclosure requirements for Level 3 measurements. This ASU is effective for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted for any eliminated or modified disclosures. We adopted the new standard on January 1, 2020, and it did not have a material impact on our disclosures.</p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><b style="font-weight:bold;">Recently issued accounting pronouncements not yet adopted</b></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">In December 2019, the FASB issued ASU No. 2019-12, “Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes”, which removes certain exceptions to the general principles in Topic 740 and also clarifies and amends existing guidance to improve consistent application. This ASU is effective for fiscal years beginning after December 15, 2020, and interim periods within those fiscal years. Depending on the amendment, adoption may be applied on the retrospective, modified retrospective, or prospective basis. We are currently evaluating the potential effects of adopting the provisions of ASU No. 2019-12.</p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 4—Fair Value Measurements</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">ASC Topic 820, “<i style="font-style:italic;">Fair Value Measurements and Disclosures</i><span style="white-space:pre-wrap;">”, defines fair value, establishes a framework for measuring fair value in GAAP and requires certain disclosures about fair value measurements. ASC Topic 820 addresses fair value GAAP for financial assets and financial liabilities that are re-measured and reported at fair value at each reporting period and for non-financial assets and liabilities that are re-measured and reported at fair value on a non-recurring basis.</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">In general, fair values determined by Level 1 inputs use quoted prices (unadjusted) in active markets for identical assets or liabilities. Fair values determined by Level 2 inputs use data points that are observable such as quoted prices, interest rates and yield curves. Fair values determined by Level 3 inputs are “unobservable data points” for the asset or liability and include situations where there is little, if any, market activity for the asset or liability.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following table presents, for each of the fair value hierarchy levels identified under ASC Topic 820, our financial assets and liabilities that are required to be measured at fair value at March 31, 2020 and December 31, 2019 (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:50.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value Measurements at Reporting Date</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Significant</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Quoted Prices</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Significant</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">in Active Markets</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Observable</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unobservable</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">for Identical Assets</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(Level 1)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(Level 2)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(Level 3)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Assets as of March 31, 2020:</b></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Cash and cash equivalents </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Contingent consideration</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 938</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Liabilities as of March 31, </b><b style="font-weight:bold;white-space:pre-wrap;">2020: </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Interest rate swap</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,414</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-weight:bold;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Assets as of December 31, 2019:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Cash and cash equivalents </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 120,286</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Contingent consideration</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 938</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Liabilities as of December 31, </b><b style="font-weight:bold;white-space:pre-wrap;">2019: </b></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Interest rate swap</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="white-space:pre-wrap;">Other financial instruments not listed in the table consist of accounts receivable, accounts payable and certain accrued liabilities. These financial instruments generally approximate fair value based on their short-term nature. The carrying value of our long-term debt approximates fair value based on comparison with current prevailing market rates for loans of similar risks and maturities. </span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">In the second quarter of 2019, we sold certain assets that included an earnout of $2.0 million, contingent upon the buyer meeting a certain performance target. The estimated fair value of the contingent consideration on the sale date was approximately $0.9 million. We measured the fair value of the contingent consideration using the income approach, which discounts the future cash payments expected upon meeting the performance target to present value. The fair value of the contingent consideration was impacted by two unobservable inputs, management’s estimate of the probability of meeting the performance target and the estimated discount rate (a rate that approximates our cost of capital). Significant changes in either of those inputs in isolation would result in a different fair value measurement. During the first quarter of 2020, there was no change to the fair value of the contingent consideration.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The interest rate swap is measured at fair value using the income approach, which discounts the future net cash settlements expected under the derivative contracts to a present value. These valuations primarily utilize indirectly observable inputs, including contractual terms, interest rates and yield curves observable at commonly quoted intervals. See Note 9 – “<i style="font-style:italic;">Derivative Instruments</i>” for additional information.</p> <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following table presents, for each of the fair value hierarchy levels identified under ASC Topic 820, our financial assets and liabilities that are required to be measured at fair value at March 31, 2020 and December 31, 2019 (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:50.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fair Value Measurements at Reporting Date</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Significant</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Quoted Prices</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Other</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Significant</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">in Active Markets</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Observable</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unobservable</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">for Identical Assets</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Inputs</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(Level 1)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(Level 2)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">(Level 3)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Assets as of March 31, 2020:</b></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Cash and cash equivalents </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Contingent consideration</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 938</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Liabilities as of March 31, </b><b style="font-weight:bold;white-space:pre-wrap;">2020: </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Interest rate swap</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,414</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="font-weight:bold;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Assets as of December 31, 2019:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Cash and cash equivalents </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 120,286</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Contingent consideration</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 938</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Liabilities as of December 31, </b><b style="font-weight:bold;white-space:pre-wrap;">2019: </b></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:44.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Interest rate swap</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 93474000 938000 11414000 120286000 938000 6443000 2000000.0 900000 0 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 5—Revenue</b></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We generate revenue under a range of contracting types, including fixed-price, unit-price, time and material, and cost reimbursable plus fee contracts. A substantial portion of our revenue is derived from contracts that are fixed-price or unit-price and is recognized over time as work is completed because of the continuous transfer of control to the customer (typically using an input measure such as costs incurred to date relative to total estimated costs at completion to measure progress). For time and material and cost reimbursable plus fee contracts, revenue is recognized primarily on an input basis, based on contract costs incurred as defined within the respective contracts. Costs to obtain contracts are generally not significant and are expensed in the period incurred.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We evaluate whether two or more contracts should be combined and accounted for as one single performance obligation and whether a single contract should be accounted for as more than one performance obligation. ASC 606 defines a performance obligation as a contractual promise to transfer a distinct good or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. Our evaluation requires significant judgment and the decision to combine a group of contracts or separate a contract into multiple performance obligations could change the amount of revenue and profit </p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">recorded in a given period. The majority of our contracts have a single performance obligation, as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contract and, therefore, is not distinct. However, occasionally we have contracts with multiple performance obligations. For contracts with multiple performance obligations, we allocate the contract’s transaction price to each performance obligation using the observable standalone selling price, if available, or alternatively our best estimate of the standalone selling price of each distinct performance obligation in the contract. The primary method used to estimate standalone selling price is the expected cost plus a margin approach for each performance obligation. </span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> <span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">As of March 31, 2020, we had $2.08 billion of remaining performance obligations. We expect to recognize approximately 58% of our remaining performance obligations as revenue during the next <span style="-sec-ix-hidden:Hidden_fnOPOmlGxkC0CJEcbfBzDg"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">four</span></span> quarters and substantially all of the remaining balance by the first quarter of 2022.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="white-space:pre-wrap;">Accounting for long-term contracts involves the use of various techniques to estimate total transaction price and costs. For long-term contracts, transaction price, estimated cost at completion and total costs incurred to date are used to calculate revenue earned. Unforeseen events and circumstances can alter the estimate of the costs and potential profit associated with a particular contract. Total estimated costs, and thus contract revenue and income, can be impacted by changes in productivity, scheduling, the unit cost of labor, subcontracts, materials and equipment. Additionally, external factors such as weather, client needs, client delays in providing permits and approvals, labor availability, governmental regulation, politics and any prevailing impacts from the pandemic caused by the coronavirus may affect the progress of a project’s completion, and thus the timing of revenue recognition. To the extent that original cost estimates are modified, estimated costs to complete increase, delivery schedules are delayed, or progress under a contract is otherwise impeded, cash flow, revenue recognition and profitability from a particular contract may be adversely affected. </span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The nature of our contracts gives rise to several types of variable consideration, including contract modifications (change orders and claims), liquidated damages, volume discounts, performance bonuses, incentive fees, and other terms that can either increase or decrease the transaction price. We estimate variable consideration as the most likely amount to which we expect to be entitled. We include estimated amounts in the transaction price to the extent we believe we have an enforceable right, and it is probable that a significant reversal of cumulative revenue recognized will not occur. Our estimates of variable consideration and the determination of whether to include estimated amounts in the transaction price are based largely on an assessment of our anticipated performance and all information (historical, current and forecasted) that is reasonably available to us at this time. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Contract modifications result from changes in contract specifications or requirements. We consider unapproved change orders to be contract modifications for which customers have not agreed to both scope and price. We consider claims to be contract modifications for which we seek, or will seek, to collect from customers, or others, for customer-caused changes in contract specifications or design, or other customer-related causes of unanticipated additional contract costs on which there is no agreement with customers. Claims can also be caused by non-customer-caused changes, such as rain or other weather delays. Costs associated with contract modifications are included in the estimated costs to complete the contracts and are treated as project costs when incurred. In most instances, contract modifications are for goods or services that are not distinct, and, therefore, are accounted for as part of the existing contract. The effect of a contract modification on the transaction price, and our measure of progress for the performance obligation to which it relates, is recognized as an adjustment to revenue on a cumulative catch-up basis. In some cases, settlement of contract modifications may not occur until after completion of work under the contract.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">As a significant change in one or more of these estimates could affect the profitability of our contracts, we review and update our contract-related estimates regularly. We recognize adjustments in estimated profit on contracts under the cumulative catch-up method. Under this method, the cumulative impact of the profit adjustment is recognized in the period the adjustment is identified. Revenue and profit in future periods of contract performance are recognized using the adjusted estimate. In the three months ended March 31, 2020, revenue recognized from performance obligations satisfied in previous periods was $3.6 million. If at any time the estimate of contract profitability indicates an anticipated loss on a contract, the projected loss is recognized in full, including any previously recognized profit, in the period it is identified and recognized as an “accrued loss provision” which is included in “Contract liabilities” on the Condensed Consolidated Balance Sheets. For contract revenue recognized over time, the accrued loss provision is adjusted so that the gross profit for the contract remains zero in future periods. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">At March 31, 2020, we had approximately $94.4 million of unapproved contract modifications included in the aggregate transaction prices. These contract modifications were in the process of being negotiated in the normal course of </p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">business. Approximately $80.6 million of the contract modifications had been recognized as revenue on a cumulative catch-up basis through March 31, 2020.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="white-space:pre-wrap;">In all forms of contracts, we estimate the collectability of contract amounts at the same time that we estimate project costs. If we anticipate that there may be issues associated with the collectability of the full amount calculated as the transaction price, we may reduce the amount recognized as revenue to reflect the uncertainty associated with realization of the eventual cash collection. For example, when a cost reimbursable project exceeds the client’s expected budget amount, the client frequently requests an adjustment to the final amount. Similarly, some utility clients reserve the right to audit costs for significant periods after performance of the work.</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The timing of when we bill our customers is generally dependent upon agreed-upon contractual terms, milestone billings based on the completion of certain phases of the work, or when services are provided. Sometimes, billing occurs subsequent to revenue recognition, resulting in unbilled revenue, which is a contract asset. Also, we sometimes receive advances or deposits from our customers before revenue is recognized, resulting in deferred revenue, which is a contract liability. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The caption “Contract assets” in the Condensed Consolidated Balance Sheets represents the following:</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><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;"><tr><td style="width:54pt;"/><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">●</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">unbilled revenue, which arise when revenue has been recorded but the amount will not be billed until a later date;</span></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 72pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p><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;"><tr><td style="width:54pt;"/><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">●</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">retainage amounts for the portion of the contract price earned by us for work performed, but held for payment by the customer as a form of security until we reach certain construction milestones; and</span></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 72pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p><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;"><tr><td style="width:54pt;"/><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">●</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">contract materials for certain job specific materials not yet installed, which are valued using the specific identification method relating the cost incurred to a specific project. </span></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Contract assets consist of the following (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Unbilled revenue</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 268,282</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 251,429</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Retention receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 78,216</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 81,393</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract materials (not yet installed)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 12,872</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,984</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 359,370</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 344,806</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Contract assets increased by $14.6 million compared to December 31, 2019 due primarily to higher unbilled revenue.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The caption “Contract liabilities” in the Condensed Consolidated Balance Sheets represents deferred revenue on billings in excess of contract revenue recognized to date, and the accrued loss provision.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Contract liabilities consist of the following (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Deferred revenue</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 171,553</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 186,081</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accrued loss provision</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,294</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,316</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 176,847</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 192,397</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Contract liabilities decreased by $15.6 million compared to December 31, 2019 due primarily to lower deferred revenue.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Revenue recognized for the three months ended March 31, 2020, that was included in the contract liability balance at December 31, 2019 was approximately $97.9 million.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following tables present our revenue disaggregated into various categories.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Master Service Agreements (“MSA”) and Non-MSA revenue was as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:47.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, 2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:46.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">MSA</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Non-MSA</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37,095</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 159,098</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 196,193</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 46,732</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 144,791</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 191,523</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 104,011</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43,159</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 147,170</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 81,774</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,010</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 102,784</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 796</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 104,777</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,573</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 270,408</p></td><td style="vertical-align:top;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:top;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 472,835</p></td><td style="vertical-align:top;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:top;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 743,243</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:47.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, 2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:46.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">MSA</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Non-MSA</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 49,195</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,188</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 145,383</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,849</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,965</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 134,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 119,462</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 26,744</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,206</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 101,723</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,720</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 118,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 650</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 116,062</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 116,712</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 292,879</p></td><td style="vertical-align:top;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:top;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 368,679</p></td><td style="vertical-align:top;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:top;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 661,558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Revenue by contract type was as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:59.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, 2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:36.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fixed-price</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unit-price</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost reimbursable (1)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 144,850</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 181</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 51,162</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 196,193</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,345</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 81,830</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 94,348</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 191,523</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 24,089</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 80,639</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42,442</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 147,170</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13,636</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 88,789</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 102,784</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 19,859</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 75,447</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,267</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,573</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 217,779</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 326,886</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 198,578</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 743,243</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><div style="font-family:'Times New Roman';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/></div><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;"><tr><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Includes time and material and cost reimbursable plus fee contracts.</span></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:59.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, 2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:36.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fixed-price</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unit-price</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost reimbursable (1)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 75,143</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,613</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 63,627</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 145,383</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,227</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 374</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 117,213</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 134,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,767</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 67,878</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 55,561</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,206</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,463</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,841</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,139</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 118,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,685</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 78,494</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,533</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 116,712</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,285</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 259,200</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 256,073</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 661,558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><div style="font-family:'Times New Roman';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/></div><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;"><tr><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Includes time and material and cost reimbursable plus fee contracts.</span></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Each of these contract types has a different risk profile. Typically, we assume more risk with fixed-price contracts. Unforeseen events and circumstances can alter the estimate of the costs and potential profit associated with a particular fixed-price contract. However, these types of contracts offer additional profits when we complete the work for less cost than originally estimated. Unit-price and cost reimbursable contracts generally subject us to lower risk. Accordingly, the associated fees are usually lower than fees earned on fixed-price contracts. Under these contracts, our profit may vary if actual costs vary significantly from the negotiated rates.</p> 2080000000.00 0.58 3600000 94400000 80600000 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Contract assets consist of the following (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Unbilled revenue</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 268,282</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 251,429</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Retention receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 78,216</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 81,393</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract materials (not yet installed)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 12,872</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,984</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 359,370</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 344,806</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 268282000 251429000 78216000 81393000 12872000 11984000 359370000 344806000 -14600000 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Contract liabilities consist of the following (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Deferred revenue</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 171,553</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 186,081</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accrued loss provision</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,294</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,316</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 176,847</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 192,397</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 171553000 186081000 5294000 6316000 176847000 192397000 -15600000 97900000 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Master Service Agreements (“MSA”) and Non-MSA revenue was as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:47.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, 2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:46.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">MSA</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Non-MSA</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37,095</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 159,098</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 196,193</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 46,732</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 144,791</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 191,523</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 104,011</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43,159</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 147,170</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 81,774</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,010</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 102,784</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 796</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 104,777</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,573</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 270,408</p></td><td style="vertical-align:top;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:top;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 472,835</p></td><td style="vertical-align:top;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:top;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 743,243</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:47.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, 2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:46.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">MSA</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Non-MSA</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 49,195</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 96,188</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 145,383</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,849</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,965</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 134,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 119,462</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 26,744</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,206</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 101,723</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,720</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 118,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 650</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 116,062</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 116,712</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:46.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:top;white-space:nowrap;width:1.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 292,879</p></td><td style="vertical-align:top;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:top;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 368,679</p></td><td style="vertical-align:top;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:top;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:top;white-space:nowrap;width:12.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 661,558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Revenue by contract type was as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:59.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, 2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:36.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fixed-price</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unit-price</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost reimbursable (1)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 144,850</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 181</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 51,162</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 196,193</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,345</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 81,830</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 94,348</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 191,523</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 24,089</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 80,639</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42,442</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 147,170</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 13,636</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 88,789</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 102,784</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 19,859</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 75,447</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,267</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,573</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 217,779</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 326,886</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 198,578</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 743,243</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><div style="font-family:'Times New Roman';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/></div><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;"><tr><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Includes time and material and cost reimbursable plus fee contracts.</span></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:59.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, 2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:36.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Fixed-price</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unit-price</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Cost reimbursable (1)</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 75,143</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,613</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 63,627</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 145,383</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,227</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 374</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 117,213</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 134,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,767</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 67,878</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 55,561</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,206</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,463</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,841</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,139</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 118,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,685</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 78,494</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,533</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 116,712</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:top;width:36.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,285</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 259,200</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 256,073</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 661,558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><div style="font-family:'Times New Roman';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/></div><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;"><tr><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Includes time and material and cost reimbursable plus fee contracts.</span></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 37095000 159098000 196193000 46732000 144791000 191523000 104011000 43159000 147170000 81774000 21010000 102784000 796000 104777000 105573000 270408000 472835000 743243000 49195000 96188000 145383000 21849000 112965000 134814000 119462000 26744000 146206000 101723000 16720000 118443000 650000 116062000 116712000 292879000 368679000 661558000 144850000 181000 51162000 196193000 15345000 81830000 94348000 191523000 24089000 80639000 42442000 147170000 13636000 88789000 359000 102784000 19859000 75447000 10267000 105573000 217779000 326886000 198578000 743243000 75143000 6613000 63627000 145383000 17227000 374000 117213000 134814000 22767000 67878000 55561000 146206000 8463000 105841000 4139000 118443000 22685000 78494000 15533000 116712000 146285000 259200000 256073000 661558000 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 6—Goodwill and Intangible Assets</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;text-indent:36pt;margin:0pt;">The carrying amount of goodwill by reportable segment is as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Reporting Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 26,194</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 26,194</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 52,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 52,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37,312</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37,312</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 59,032</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 59,032</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 40,150</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 40,150</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 215,103</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 215,103</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The table below summarizes the intangible asset categories, amounts and the average amortization periods, which are on a straight-line basis (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:30.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, 2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:30.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;width:8.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted<br/>Average Life</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Carrying<br/>Amount</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:9.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated<br/>Amortization</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:7.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Intangible assets, net</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Carrying<br/>Amount</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:9.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated<br/>Amortization</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:7.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Intangible assets, net</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Tradename </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">9 years</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,040</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (13,714)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,326</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,040</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (13,216)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,824</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Customer relationships </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">17 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (26,128)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 64,872</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (24,353)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 66,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Non-compete agreements </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">5 years</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,900</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (1,653)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 247</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,900</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (1,580)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 320</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">3 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 275</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (260)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 275</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (237)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 38</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Total</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">16 years</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 109,215</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (41,755)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 67,460</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 109,215</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (39,386)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 69,829</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Amortization expense of intangible assets was $2.4 million and $2.7 million for the three months ended March 31, 2020 and 2019, respectively. Estimated future amortization expense for intangible assets is as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:66.89%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Intangible</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:82.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">For the Years Ending December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Expense</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2020 (remaining nine months)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,448</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,577</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2022</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,416</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,581</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2024</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,862</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 36,576</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 67,460</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;text-indent:36pt;margin:0pt;">The carrying amount of goodwill by reportable segment is as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Reporting Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 26,194</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 26,194</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 52,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 52,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37,312</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37,312</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 59,032</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 59,032</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 40,150</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 40,150</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.49%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 215,103</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 215,103</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 26194000 26194000 52415000 52415000 37312000 37312000 59032000 59032000 40150000 40150000 215103000 215103000 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The table below summarizes the intangible asset categories, amounts and the average amortization periods, which are on a straight-line basis (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:30.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, 2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:30.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;width:8.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted<br/>Average Life</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Carrying<br/>Amount</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:9.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated<br/>Amortization</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:7.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Intangible assets, net</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Carrying<br/>Amount</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:9.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated<br/>Amortization</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;width:7.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Intangible assets, net</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Tradename </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">9 years</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,040</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (13,714)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,326</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,040</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (13,216)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,824</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Customer relationships </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">17 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (26,128)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 64,872</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (24,353)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 66,647</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Non-compete agreements </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">5 years</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,900</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (1,653)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 247</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,900</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (1,580)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 320</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">3 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 275</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (260)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 275</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (237)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 38</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Total</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">16 years</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 109,215</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (41,755)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 67,460</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 109,215</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (39,386)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.64%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 69,829</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> P9Y 16040000 13714000 2326000 16040000 13216000 2824000 P17Y 91000000 26128000 64872000 91000000 24353000 66647000 P5Y 1900000 1653000 247000 1900000 1580000 320000 P3Y 275000 260000 15000 275000 237000 38000 P16Y 109215000 41755000 67460000 109215000 39386000 69829000 2400000 2700000 Estimated future amortization expense for intangible assets is as follows (in thousands):<p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:66.89%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Estimated</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Intangible</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:82.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">For the Years Ending December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Expense</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2020 (remaining nine months)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,448</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,577</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2022</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,416</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,581</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2024</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,862</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 36,576</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:82.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 67,460</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 6448000 7577000 6416000 5581000 4862000 36576000 67460000 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 7—Accounts Payable and Accrued Liabilities</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">At March 31, 2020 and December 31, 2019, accounts payable included retention amounts of approximately $10.9 million and $11.3 million, respectively.  These amounts owed to subcontractors have been retained pending contract completion and customer acceptance of jobs.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following is a summary of accrued liabilities (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:75.24%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Payroll and related employee benefits </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,008</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 64,705</p></td></tr><tr><td style="vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Current operating lease liability</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 79,532</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,036</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Casualty insurance reserves</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,902</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,918</p></td></tr><tr><td style="vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Corporate income taxes and other taxes </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,822</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,027</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Other </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,384</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,815</p></td></tr><tr><td style="vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 192,648</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 183,501</p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 10900000 11300000 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following is a summary of accrued liabilities (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:75.24%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:13.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Payroll and related employee benefits </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,008</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 64,705</p></td></tr><tr><td style="vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Current operating lease liability</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 79,532</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,036</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Casualty insurance reserves</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,902</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,918</p></td></tr><tr><td style="vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Corporate income taxes and other taxes </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,822</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,027</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Other </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,384</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,815</p></td></tr><tr><td style="vertical-align:bottom;width:71.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 192,648</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.18%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 183,501</p></td></tr></table> 74008000 64705000 79532000 74036000 9902000 9918000 6822000 9027000 22384000 25815000 192648000 183501000 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 8—Credit Arrangements</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Long-term debt and credit facilities consists of the following (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:10.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:10.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Calibri';font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Term loan</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 200,750</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 203,500</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Revolving credit facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Commercial equipment notes</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,309</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,114</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Mortgage notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 49,854</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Total debt</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 343,913</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 352,088</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Unamortized debt issuance costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (734)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (787)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Total debt, net</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 343,179</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 351,301</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Less: current portion </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (52,430)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (55,659)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Long-term debt, net of current portion </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 290,749</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 295,642</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The weighted average interest rate on total debt outstanding at March 31, 2020 and December 31, 2019 was 3.9% and 4.0%, respectively.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Credit Agreement</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:39pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Our amended and restated credit agreement (“Credit Agreement”) consists of a $220.0 million term loan and a $200.0 million revolving credit facility (“Revolving Credit Facility”), whereby the lenders agreed to make loans on a revolving basis from time to time and to issue letters of credit for up to the $200.0 million committed amount. The Credit Agreement also includes the ability to increase the borrowing capacity thereunder by $75.0 million, subject to obtaining additional or increased lender commitments. The maturity date of the Credit Agreement is July 9, 2023. At March 31, 2020, there were no outstanding borrowings under the Revolving Credit Facility, commercial letters of credit outstanding were $39.5 million, and available borrowing capacity was $160.5 million.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The Credit Agreement contains various restrictive and financial covenants including, among others, a senior debt/EBITDA ratio and debt service coverage requirements. In addition, the Credit Agreement includes restrictions on investments, change of control provisions and provisions in the event we dispose of more than 20% of our total assets. We were in compliance with the covenants for the Credit Agreement at March 31, 2020.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Canadian Credit Facilities</span></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We have a demand credit facility for $4.0 million in Canadian dollars with a Canadian bank for purposes of issuing commercial letters of credit in Canada. At March 31, 2020, commercial letters of credit outstanding were $0.6 million in Canadian dollars, and the available borrowing capacity was $3.4 million in Canadian dollars. The credit facility contains a working capital restrictive covenant for OnQuest Canada, ULC, our wholly owned subsidiary. At March 31, 2020, OnQuest Canada, ULC was in compliance with the covenant.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We have a credit facility for $10.0 million in Canadian dollars with CIBC Bank for working capital purposes in the normal course of business (“Working Capital Credit Facility”). At March 31, 2020, there were no outstanding borrowings under the Working Capital Credit Facility, and available borrowing capacity was $10.0 million in Canadian dollars. The Working Capital Credit Facility contains a cross default restrictive covenant where a default under our Credit Agreement will represent a default in the Working Capital Credit Facility.</p> <p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Long-term debt and credit facilities consists of the following (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:10.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:10.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:10.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-family:'Calibri';font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Term loan</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 200,750</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 203,500</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Revolving credit facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Commercial equipment notes</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,309</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,114</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Mortgage notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 49,854</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 43,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Total debt</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 343,913</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 352,088</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Unamortized debt issuance costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (734)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (787)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Total debt, net</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 343,179</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 351,301</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Less: current portion </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (52,430)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (55,659)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Long-term debt, net of current portion </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 290,749</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 295,642</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 200750000 203500000 93309000 105114000 49854000 43474000 343913000 352088000 734000 787000 343179000 351301000 52430000 55659000 290749000 295642000 0.039 0.040 220000000.0 200000000.0 200000000.0 75000000.0 0 39500000 160500000 0.20 4000000.0 600000 3400000 10000000.0 0 10000000.0 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 9 — Derivative Instruments</b></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/><span style="white-space:pre-wrap;">We are exposed to certain market risks related to changes in interest rates. To monitor and manage these market risks, we have established risk management policies and procedures. We do not enter into derivative instruments for any purpose other than hedging interest rate risk. None of our derivative instruments are used for trading purposes.</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/><span style="font-style:italic;font-weight:bold;">Interest Rate Risk. </span>We are exposed to variable interest rate risk as a result of variable-rate borrowings under our Credit Agreement. To manage fluctuations in cash flows resulting from changes in interest rates on a portion of our </p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">variable-rate debt, we entered into an interest rate swap agreement on September 13, 2018 with an initial notional amount of $165.0 million, or 75% of the debt outstanding under our Term Loan, which was not designated as a hedge for accounting purposes. The notional amount of the swap will be adjusted down each quarter by 75% of the required principal payments made on the Term Loan. The swap effectively changes the variable-rate cash flow exposure on the debt obligations to fixed rates. The fair value of outstanding interest rate swap derivatives can vary significantly from period to period depending on the total notional amount of swap derivatives outstanding and fluctuations in market interest rates compared to the interest rates fixed by the swaps. As of March 31, 2020, and December 31, 2019, our outstanding interest rate swap agreement contained a notional amount of $150.6 million and $152.6 million, respectively, with a maturity date of July 10, 2023.</p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/><span style="font-style:italic;font-weight:bold;">Credit Risk. </span>By using derivative instruments to economically hedge exposures to changes in interest rates, we are exposed to counterparty credit risk. Credit risk is the failure of a counterparty to perform under the terms of a derivative contract. When the fair value of a derivative contract is positive, the counterparty owes us, which creates credit risk for us. When the fair value of a derivative contract is negative, we owe the counterparty and, therefore, we do not possess credit risk. We minimize the credit risk in derivative instruments by entering into transactions with high quality counterparties. We have entered into netting agreements, including International Swap Dealers Association (“ISDA”) Agreements, which allow for netting of contract receivables and payables in the event of default by either party.</p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following table summarizes the fair value of our derivative contracts included in the Condensed Consolidated Balance Sheets (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:32.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:26.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:26.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:32.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:26.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Balance Sheet Location</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:32.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Interest rate swap</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:26.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Other long-term liabilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,414</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,443</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:32.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Total derivatives</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:26.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,414</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/>The following table summarizes the amounts recognized with respect to our derivative instruments within the Condensed Consolidated Statements of Operations (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:101.66%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:27.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:32.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:27.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:34.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:27.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Location of Loss Recognized</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:34.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:27.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">on Derivatives</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:27.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Interest rate swap</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:32.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">Interest expense</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,435</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:15.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,596</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/>Cash flows from derivatives settled are reported as cash flows from operating activities.</p> 0 165000000.0 0.75 0.75 150600000 152600000 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following table summarizes the fair value of our derivative contracts included in the Condensed Consolidated Balance Sheets (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:32.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:26.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:26.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:32.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:26.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Balance Sheet Location</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:32.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Interest rate swap</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:26.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Other long-term liabilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,414</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,443</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:32.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Total derivatives</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:26.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 11,414</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 11414000 6443000 11414000 6443000 <table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:101.66%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:27.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:32.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:27.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:34.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:27.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Location of Loss Recognized</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:34.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:27.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">on Derivatives</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:27.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Interest rate swap</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:32.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;">Interest expense</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,435</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:15.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,596</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 5435000 1596000 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 10 — Noncontrolling Interests</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We own a 50% interest in the Carlsbad joint venture which operates in the Power segment. The joint venture has been determined to be a VIE and we were determined to be the primary beneficiary as a result of our significant influence over the joint venture operations.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="white-space:pre-wrap;">The joint venture is a partnership, and consequently, only the tax effect of our share of the income was recognized by us. The net assets of the joint venture are restricted for use by the specific project and are not available for our general operations.</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The Carlsbad joint venture’s operating activities began in 2015 and are included in our Condensed Consolidated Statements of Operations as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:75.66%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:65.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="color:#0563c1;font-family:'Calibri';font-size:14pt;font-weight:bold;text-decoration:underline;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;width:28.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:65.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Revenue</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,024</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Net income attributable to noncontrolling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 989</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The Carlsbad joint venture made no distributions to the partners and we made no capital contributions to the Carlsbad joint venture during the three months ended March 31, 2020 and 2019. The project was substantially complete as of December 31, 2018 and the warranty period expires in December 2020.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following table summarizes the total balance sheet amounts for the Carlsbad joint venture, which is included in our Condensed Consolidated Balance Sheets, and the total consolidated balance sheet amounts (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:75.89%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Joint Venture</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Consolidated</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">At March 31, 2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Cash</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,026</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,474</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 416,412</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract assets</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 359,370</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Due from Primoris</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accounts payable</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 258,962</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 434</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 176,847</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">At December 31, 2019</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Cash</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,124</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 120,286</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 404,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract assets</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 344,806</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accounts payable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 38</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 235,972</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract liabilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 425</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 192,397</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:1pt;margin-left:0pt;margin-right:0pt;margin-top:0pt;"/><p style="clear:both;font-family:'Times New Roman';font-size:1pt;margin-bottom:0pt;margin-left:0pt;margin-right:0pt;"><span style="visibility:hidden;">​</span></p> 0.50 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The Carlsbad joint venture’s operating activities began in 2015 and are included in our Condensed Consolidated Statements of Operations as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:75.66%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:65.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="color:#0563c1;font-family:'Calibri';font-size:14pt;font-weight:bold;text-decoration:underline;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;width:28.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:65.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Revenue</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,024</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Net income attributable to noncontrolling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 989</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 4024000 3000 989000 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following table summarizes the total balance sheet amounts for the Carlsbad joint venture, which is included in our Condensed Consolidated Balance Sheets, and the total consolidated balance sheet amounts (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:75.89%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Joint Venture</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Consolidated</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">At March 31, 2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amounts</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Cash</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,026</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,474</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 416,412</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract assets</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 359,370</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Due from Primoris</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 476</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accounts payable</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 258,962</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 434</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 176,847</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">At December 31, 2019</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Cash</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,124</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 120,286</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 404,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract assets</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 344,806</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Accounts payable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 38</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 235,972</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:65.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Contract liabilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 425</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 192,397</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 2026000 93474000 416412000 359370000 476000 258962000 434000 176847000 2124000 120286000 404911000 344806000 38000 235972000 425000 192397000 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 11—Stock-Based Compensation</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">In May 2013, the shareholders approved and we adopted the Primoris Services Corporation 2013 Long-term Incentive Equity Plan (“Equity Plan”). Our Board of Directors has granted 607,361<span style="white-space:pre-wrap;"> Restricted Stock Units (“Units”), net of forfeitures, to employees under the Equity Plan. The grants were documented in RSU Award Agreements, which provide for a vesting schedule and require continuing employment of the employee. The Units are subject to earlier acceleration, termination, cancellation or forfeiture as provided in the underlying RSU Award Agreement. </span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">At March 31, 2020, a total of 260,630 Units were vested. The vesting schedule for the remaining Units are as follows:</p><p style="font-family:'Times New Roman';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Number of Units</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">For the Years Ending December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:27.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">to Vest</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2020 (remaining nine months)</p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23,896</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2021</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 179,364</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 84,415</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2023</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:27.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 59,056</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:27.5%;border-bottom:3px double #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 346,731</p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Under guidance of ASC Topic 718 “<i style="font-style:italic;">Compensation — Stock Compensation</i>”, stock-based compensation cost is measured at the date of grant, based on the calculated fair value of the stock-based award, and is recognized as expense over the employee’s requisite service period (generally the vesting period of the award).</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="white-space:pre-wrap;">The fair value of the Units was based on the closing market price of our common stock on the day prior to the date of the grant. Stock compensation expense for the Units is being amortized using the straight-line method over the service period. We recognized </span>$0.5 million in compensation expense for each of the three months ended March 31, 2020 and 2019, respectively. At March 31, 2020, approximately $5.4 million of unrecognized compensation expense remained for the Units, which will be recognized over a weighted average period of 2.4 years.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Vested Units accrue “Dividend Equivalent Units” (as defined in the Equity Plan), which will be accrued as additional Units until the Units are converted to Common Stock.  At March 31, 2020, a total of 2,401 Dividend Equivalent Units were accrued.</p> 607361 260630 <p style="font-family:'Times New Roman';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Number of Units</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">For the Years Ending December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:27.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">to Vest</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2020 (remaining nine months)</p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23,896</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2021</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 179,364</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:27.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 84,415</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">2023</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:27.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 59,056</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:27.5%;border-bottom:3px double #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 346,731</p></td></tr></table> 23896 179364 84415 59056 346731 500000 500000 5400000 P2Y4M24D 2401 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 12—Income Taxes</b></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We are subject to tax liabilities imposed by multiple jurisdictions. We determine our best estimate of the annual effective tax rate at each interim period using expected annual pre-tax earnings, statutory tax rates, and available tax planning opportunities. Certain significant or unusual items are separately recognized in the quarter in which they occur </p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">which can cause variability in the effective tax rate from quarter to quarter. We recognize interest and penalties related to uncertain tax positions, if any, as an income tax expense.</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We do not include the income tax expense or benefit related to the net earnings or loss attributable to noncontrolling interest in our income tax expense as the entities are considered pass-through entities and, as such, the income tax expense or benefit is attributable to its owners. The effective tax rate on income including noncontrolling interests for the three months ended March 31, 2020 and 2019 was 29.0% and 21.3%, respectively. Excluding noncontrolling interest, the effective tax rate on (loss) income attributable to Primoris for the three months ended March 31, 2020 and 2019 was 29.0%. For the first three months of 2020 and 2019, our tax rate differs from the U.S. federal statutory rate of 21.0% primarily due to the impact of state income taxes and nondeductible components of per diem expenses. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Our U.S. federal income tax returns are generally no longer subject to examination for tax years before 2016. The statutes of limitation of state and foreign jurisdictions generally vary between 3 to 5 years. Accordingly, our state and foreign income tax returns are generally no longer subject to examination for tax years before 2014.</p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Income taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for temporary differences between the financial reporting bases and tax bases of assets and liabilities based on enacted tax rates expected to be in effect when such amounts are realized or settled. However, deferred tax assets are recognized only to the extent that it is more likely than not that they will be realized based upon consideration of available evidence, including future reversals of existing taxable temporary differences, future projected taxable income, the length of the tax asset carryforward periods, and tax planning strategies. The effects of remeasurement of deferred tax assets and liabilities resulting from changes in tax rates are recognized in income in the period of enactment.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">On March 27, 2020, the Coronavirus Aid, Relief, and Economic Security Act (CARES Act) was enacted by the US Government in response to the COVID-19 pandemic. Similarly, the Canada Emergency Wage Subsidy legislation was enacted on April 11, 2020 to provide employment retention incentives to certain Canadian employers. These relief measures did not materially affect the Consolidated Financial Statements for the first quarter of 2020. We are currently assessing the future implications of these provisions on our Consolidated Financial Statements.</p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 0.290 0.213 0.290 0.210 P3Y P5Y <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 13—Dividends and Earnings Per Share</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We paid cash dividends during 2020 and 2019 as follows:</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:85.55%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:24.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Declaration Date</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:24.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Record Date</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:24.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Date Paid</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amount Per Share</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">November 2, 2018</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">December 31, 2018</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">January 15, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">February 26, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">March 29, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">April 15, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">May 3, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">June 28, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">July 15, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">August 2, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">September 30, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">October 15, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">October 31, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">December 31, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">January 15, 2020</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">February 21, 2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">March 31, 2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">April 15, 2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 72pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The payment of future dividends is contingent upon our revenue and earnings, capital requirements and our general financial condition, as well as contractual restrictions and other considerations deemed relevant by the Board of Directors.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The table below presents the computation of basic and diluted (loss) earnings per share for the three months ended March 31, 2020 and 2019 (in thousands, except per share amounts).</p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:87.76%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:25.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Numerator:</b></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Net (loss) income attributable to Primoris</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (3,737)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,947</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Denominator:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Weighted average shares for computation of basic earnings per share</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 48,588</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,770</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Dilutive effect of shares issued to independent directors (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Dilutive effect of restricted stock units (1)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 410</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Weighted average shares for computation of diluted (loss) earnings per share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 48,588</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 51,188</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">(Loss) earnings per share attributable to Primoris:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Basic</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (0.08)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.04</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (0.08)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.04</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><div style="font-family:'Times New Roman';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/></div><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;"><tr><td style="width:27pt;"/><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:22.5pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">The dilutive effect of shares issued to independent directors and restricted stock units of 9 and 300, respectively, for the three months ended March 31, 2020, were excluded from the weighted average diluted shares outstanding for the three months ended March 31, 2020, as their inclusion would be anti-dilutive.</span></td></tr></table> <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We paid cash dividends during 2020 and 2019 as follows:</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:85.55%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:24.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Declaration Date</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:24.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Record Date</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:24.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Date Paid</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amount Per Share</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">November 2, 2018</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">December 31, 2018</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">January 15, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">February 26, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">March 29, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">April 15, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">May 3, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">June 28, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">July 15, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">August 2, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">September 30, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">October 15, 2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">October 31, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">December 31, 2019</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">January 15, 2020</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr><tr><td style="vertical-align:bottom;width:24.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">February 21, 2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">March 31, 2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:24.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">April 15, 2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">0.060</p></td></tr></table> 0.060 0.060 0.060 0.060 0.060 0.060 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The table below presents the computation of basic and diluted (loss) earnings per share for the three months ended March 31, 2020 and 2019 (in thousands, except per share amounts).</p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:87.76%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:25.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Numerator:</b></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Net (loss) income attributable to Primoris</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (3,737)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,947</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Denominator:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Weighted average shares for computation of basic earnings per share</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 48,588</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 50,770</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Dilutive effect of shares issued to independent directors (1)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Dilutive effect of restricted stock units (1)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 410</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Weighted average shares for computation of diluted (loss) earnings per share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 48,588</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 51,188</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">(Loss) earnings per share attributable to Primoris:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Basic</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (0.08)</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.04</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"> (0.08)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.04</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><div style="font-family:'Times New Roman';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/></div><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;"><tr><td style="width:27pt;"/><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:22.5pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">The dilutive effect of shares issued to independent directors and restricted stock units of 9 and 300, respectively, for the three months ended March 31, 2020, were excluded from the weighted average diluted shares outstanding for the three months ended March 31, 2020, as their inclusion would be anti-dilutive.</span></td></tr></table> -3737000 1947000 48588000 50770000 8000 410000 48588000 51188000 -0.08 0.04 -0.08 0.04 9 300 <p style="font-family:'Times New Roman';font-size:10pt;padding-left:54.7pt;text-indent:-54.7pt;margin:0pt;"><b style="font-weight:bold;">Note 14—Stockholders’ Equity</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Common stock</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We issued 34,524 and 114,106 shares of common stock in the three months ended March 31, 2020 and 2019, respectively, under our long-term retention plan (“LTR Plan”). The shares were purchased by the participants in the LTR Plan with payment made to us of $0.6 million and $1.8 million in the three months ended March 31, 2020 and 2019, respectively. Our LTR Plan for certain managers and executives allows participants to use a portion of their annual bonus amount to purchase our common stock at a discount from the market price. The shares purchased in the three months ended March 31, 2020 were a portion of bonus amounts earned in 2019, and the number of shares purchased was calculated based on 75% of the average daily closing market price of our common stock during December 2019. The shares purchased in the three months ended March 31, 2019 were for bonus amounts earned in 2018, and the number of shares was calculated at 75% of the average daily closing market price during December 2018.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">In the three months ended March 31, 2020 and 2019, we issued 16,744 and 13,278 shares of common stock, respectively, as part of the quarterly compensation of the non-employee members of the Board of Directors.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">As discussed in Note 11 — <i style="font-style:italic;">“Stock–Based Compensation”</i>, as of March 31, 2020, the Board of Directors has granted a total of 607,361 shares of Units, net of forfeitures under the Equity Plan and a total of 2,401 Dividend Equivalent Units were accrued at March 31, 2020.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Share Repurchase Plan</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">In February 2020, our Board of Directors authorized a $25.0 million share repurchase program. Under the share repurchase program, we can, depending on market conditions, share price and other factors, acquire shares of our common stock on the open market or in privately negotiated transactions. In the three months ended March 31, 2020 we purchased and cancelled 461,831 shares of common stock, which in the aggregate, equaled $7.4 million at an average share price of $16.01. The share repurchase plan expires on December 31, 2020.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"> <span style="visibility:hidden;">​</span></p> 34524 114106 600000 1800000 0.75 0.75 16744 13278 607361 2401 25000000.0 461831 7400000 16.01 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 15—Leases</b></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We lease administrative and various operational facilities, which are generally longer-term, project specific facilities or yards, and construction equipment under non-cancelable operating leases. We determine if an arrangement is a lease at inception. We have lease agreements with lease and non-lease components, which are generally accounted for separately. Operating leases are included in operating lease assets, accrued liabilities, and noncurrent operating lease liabilities on our Condensed Consolidated Balance Sheets. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Operating lease assets and operating lease liabilities are recognized at commencement date based on the present value of the future minimum lease payments over the lease term. In determining our lease term, we include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date to determine the present value of future payments. Lease expense from minimum lease payments is recognized on a straight-line basis over the lease term.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Our leases have remaining lease terms that expire at various dates through 2030, some of which may include options to extend the leases for up to 5 years. The exercise of lease extensions is at our sole discretion. Periodically, we sublease excess facility space, but any sublease income is generally not significant. Our lease agreements do not contain any material residual value guarantees or material restrictive covenants.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">The components of lease expense are as follows (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:55.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:55.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="color:#0563c1;font-family:'Calibri';font-size:14pt;font-weight:bold;text-decoration:underline;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:37.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:55.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:55.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Operating lease expense</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,978</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">(1)</b></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,513</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">(1)</b></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">________________________________________</p><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;"><tr><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Includes short-term leases which are immaterial. </span></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt 0pt 6pt 0pt;">Our operating lease liabilities are reported on the Condensed Consolidated Balance Sheets as follows (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden__JXUjXF_fUO7A8Od1LSBcw"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Accrued liabilities</span></span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 79,532</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,036</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden_YU8jmKS8wUqFjBRDNoo_bA"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Noncurrent operating lease liabilities, net of current portion</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 176,546</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 171,225</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 256,078</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 245,261</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> true P5Y <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">The components of lease expense are as follows (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:55.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:55.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="color:#0563c1;font-family:'Calibri';font-size:14pt;font-weight:bold;text-decoration:underline;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:37.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:55.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:55.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Operating lease expense</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,978</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">(1)</b></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,513</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">(1)</b></p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">________________________________________</p><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;"><tr><td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Includes short-term leases which are immaterial. </span></td></tr></table> 22978000 16513000 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt 0pt 6pt 0pt;">Our operating lease liabilities are reported on the Condensed Consolidated Balance Sheets as follows (in thousands):</p><table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">March 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden__JXUjXF_fUO7A8Od1LSBcw"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Accrued liabilities</span></span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 79,532</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,036</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden_YU8jmKS8wUqFjBRDNoo_bA"><span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;">Noncurrent operating lease liabilities, net of current portion</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 176,546</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 171,225</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:60.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 256,078</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 245,261</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 79532000 74036000 176546000 171225000 256078000 245261000 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 16—Commitments and Contingencies</b></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">NTTA settlement —</span> On February 7, 2012, we were sued in an action entitled North Texas Tollway Authority (“NTTA”), Plaintiff v. James Construction Group, LLC, and KBR, Inc., Defendants, v. Reinforced Earth Company, Third-Party Defendant (the “Lawsuit”). On February 25, 2015, the Lawsuit was settled, and we recorded a liability for $17.0 million. A second defendant agreed to provide up to $5.4 million to pay for the total expected remediation cost of approximately $22.4 million. We will pay a third-party contractor approved by the NTTA to complete the remediation. In the event that the total remediation costs exceed the $22.4 million, the second defendant would pay 20% of the excess amount and we would pay for 80% of the excess amount. During the three months ended March 31, 2020, we increased our estimate of the total expected remediation costs by $0.5 million. We also spent $2.5 million for remediation during the three months ended March 31, 2020. While we continue to monitor the progress toward remediation and the total remediation costs, at this time we cannot determine the total eventual remediation cost. At March 31, 2020, the remaining accrual balance was $6.5 million. </p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Legal proceedings — </span>We had been engaged in dispute resolution to collect money we believe we were owed for a construction project completed in 2014. The dispute resolution for the receivable initially required international arbitration; however, in the first half of 2016, the owner sought bankruptcy protection in U.S. bankruptcy court. We initiated litigation against the sureties who had provided lien and stop payment release bonds for the amount owed. During 2018, we settled with the sureties. In addition, we believe we are owed amounts from the bankruptcy trustee. We expect that we will collect a portion of the amount owed to us but cannot predict the timing of such collection.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We are subject to other claims and legal proceedings arising out of our business. We provide for costs related to contingencies when a loss from such claims is probable and the amount is reasonably estimable. In determining whether it is possible to provide an estimate of loss, or range of possible loss, we review and evaluate our litigation and regulatory matters on a quarterly basis in light of potentially relevant factual and legal developments. If we determine an unfavorable outcome is not probable or probable but not reasonably estimable, we do not accrue for a potential litigation loss.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="white-space:pre-wrap;"> Management is unable to ascertain the ultimate outcome of other claims and legal proceedings; however, after review and consultation with counsel and taking into consideration relevant insurance coverage and related deductibles/self-insurance retention, management believes that it has meritorious defenses to such claims and believes that the reasonably possible outcome of such claims will not, individually or in the aggregate, have a material adverse effect on our consolidated results of operations, financial condition or cash flow.</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Bonding —</span> At March 31, 2020 and December 31, 2019, the Company had bid and completion bonds issued and outstanding totaling approximately $829.0 million and $648.6 million, respectively.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 17000000.0 5400000 22400000 22400000 0.20 0.80 500000 2500000 6500000 829000000.0 648600000 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 17—Reportable Segments</b></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">We segregate our business into five reportable segments: the Power segment, the Pipeline segment, the Utilities segment, the Transmission segment, and the Civil segment. Each of our reportable segments is comprised of similar business units that specialize in services unique to the segment. Driving the end-user focused segments are differences in the economic characteristics of each segment, the nature of the services provided by each segment; the production processes of each segment; the type or class of customer using the segment’s services; the methods used by the segment to provide the services; and the regulatory environment of each segment’s customers.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The classification of revenue and gross profit for segment reporting purposes can at times require judgment on the part of management. Our segments may perform services across industries or perform joint services for customers in multiple industries. To determine reportable segment gross profit, certain allocations, including allocations of shared and indirect costs, such as facility costs, equipment costs and indirect operating expenses, were made.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The following is a brief description of the reportable segments:</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The Power segment operates throughout the United States and in Canada and specializes in a range of services that include engineering, procurement, and construction, retrofits, upgrades, repairs, outages, and maintenance services for entities in the petroleum and petrochemical industries, as well as traditional and renewable power generators.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The Pipeline segment operates throughout the United States and specializes in a range of services, including pipeline construction and maintenance, pipeline facility and integrity services, installation of compressor and pump stations, and metering facilities for entities in the petroleum and petrochemical industries, as well as gas, water, and sewer utilities.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The Utilities segment operates primarily in California, the Midwest, the Atlantic Coast, and the Southeast regions of the United States and specializes in a range of services, including installation and maintenance of new and existing natural gas utility distribution systems and pipeline integrity services for entities in the gas utility market.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The Transmission segment operates primarily in the Southeastern, Midwest, Atlantic Coast, and Gulf Coast regions of the United States and specializes in a range of services, including installation and maintenance of new and existing electric utility transmission, substation, and distribution systems for entities in the electric utility market.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The Civil segment operates primarily in the Southeastern and Gulf Coast regions of the United States and specializes in highway and bridge construction, airport runway construction, demolition, site work, soil stabilization, mass excavation, flood control, and drainage projects for entities in the petroleum and petrochemical industries, state and municipal departments of transportation, and airports.</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">All intersegment revenue and gross profit, which was immaterial, has been eliminated in the following tables. Total assets by segment is not presented as our Chief Operating Decision Maker as defined by ASC 280 does not review or allocate resources based on segment assets.</p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;text-decoration:underline;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">Segment Revenue</span></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Revenue by segment was as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:60%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="9" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:59.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:28.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:28.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">% of</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">% of</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 196,193</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">26.4%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 145,383</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">22.0%</p></td></tr><tr><td style="vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 191,523</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">25.8%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 134,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">20.4%</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 147,170</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">19.8%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,206</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">22.1%</p></td></tr><tr><td style="vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 102,784</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">13.8%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 118,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">17.9%</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,573</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">14.2%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 116,712</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">17.6%</p></td></tr><tr><td style="vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 743,243</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">100.0%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 661,558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">100.0%</p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:94.5pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">Segment Gross Profit</span></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Gross profit by segment was as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:60%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="9" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:55.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:26.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:26.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">% of</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">% of</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Profit</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Profit</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,682</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">9.5%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 20,198</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">13.9%</p></td></tr><tr><td style="vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,492</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">8.6%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,016</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">11.1%</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,602</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">3.1%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,241</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">5.6%</p></td></tr><tr><td style="vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,712</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">1.7%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,628</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">5.6%</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,322</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">6.0%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,377</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">2.0%</p></td></tr><tr><td style="vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 47,810</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">6.4%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 52,460</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">7.9%</p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:94.5pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">Segment Goodwill</span></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The amount of goodwill recorded by each segment at March 31, 2020 and at December 31, 2019 is presented in Note 6 – “<i style="font-style:italic;">Goodwill and Intangible Assets”</i>. </p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;text-decoration:underline;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">Geographic Region — Revenue and Total Assets</span></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">The majority of our revenue is derived from customers in the United States with approximately 4.2% and 4.6% generated from sources outside of the United States during the three months ended March 31, 2020 and 2019, respectively, principally in Canada. At March 31, 2020 and December 31, 2019, approximately 3.4% and 4.4%, respectively, of total assets were located outside of the United States, principally in Canada.</p> 5 <p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Revenue by segment was as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:60%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="9" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:59.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:28.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:28.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">% of</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">% of</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:37.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 196,193</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">26.4%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 145,383</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">22.0%</p></td></tr><tr><td style="vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 191,523</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">25.8%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 134,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">20.4%</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 147,170</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">19.8%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 146,206</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">22.1%</p></td></tr><tr><td style="vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 102,784</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">13.8%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 118,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">17.9%</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 105,573</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">14.2%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 116,712</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">17.6%</p></td></tr><tr><td style="vertical-align:bottom;width:37.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 743,243</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">100.0%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.74%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 661,558</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">100.0%</p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:94.5pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">Segment Gross Profit</span></p><p style="font-family:'Times New Roman';font-size:10pt;line-height:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">Gross profit by segment was as follows (in thousands):</p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:60%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="9" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:55.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">For the three months ended March 31, </b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:26.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:26.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">% of</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">% of</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td></tr><tr><td style="background-color:auto;vertical-align:bottom;width:41.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Profit</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.84%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Profit</b></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Power</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,682</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">9.5%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 20,198</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">13.9%</p></td></tr><tr><td style="vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Pipeline</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 16,492</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">8.6%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,016</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">11.1%</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Utilities</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,602</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">3.1%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,241</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">5.6%</p></td></tr><tr><td style="vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Transmission</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,712</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">1.7%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,628</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">5.6%</p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">Civil</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,322</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">6.0%</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,377</p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">2.0%</p></td></tr><tr><td style="vertical-align:bottom;width:41.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 47,810</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">6.4%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 52,460</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;">7.9%</p></td></tr></table><p style="font-family:'Times New Roman';font-size:10pt;text-indent:94.5pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 196193000 0.264 145383000 0.220 191523000 0.258 134814000 0.204 147170000 0.198 146206000 0.221 102784000 0.138 118443000 0.179 105573000 0.142 116712000 0.176 743243000 1.000 661558000 1.000 18682000 0.095 20198000 0.139 16492000 0.086 15016000 0.111 4602000 0.031 8241000 0.056 1712000 0.017 6628000 0.056 6322000 0.060 2377000 0.020 47810000 0.064 52460000 0.079 0.042 0.046 0.034 0.044 <p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note 18—Subsequent Events</b></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/><i style="font-style:italic;">Cash Dividend</i></p><p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"><span style="font-style:italic;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;">On May 1, 2020, the Board of Directors declared a cash dividend of $0.06 per share of common stock for stockholders of record as of June 30, 2020, payable on or about July 15, 2020.</p> 0.06 XML 22 R30.htm IDEA: XBRL DOCUMENT v3.20.1
Accounts Payable and Accrued Liabilities (Tables)
3 Months Ended
Mar. 31, 2020
Accounts Payable and Accrued Liabilities  
Summary of accrued liabilities

The following is a summary of accrued liabilities (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Payroll and related employee benefits

$

74,008

$

64,705

Current operating lease liability

79,532

74,036

Casualty insurance reserves

 

9,902

 

9,918

Corporate income taxes and other taxes

 

6,822

 

9,027

Other

 

22,384

 

25,815

$

192,648

$

183,501

XML 23 R34.htm IDEA: XBRL DOCUMENT v3.20.1
Stock-Based Compensation (Tables)
3 Months Ended
Mar. 31, 2020
Stock-Based Compensation  
Schedule of units activity

Number of Units

For the Years Ending December 31, 

    

to Vest

2020 (remaining nine months)

23,896

2021

179,364

2022

84,415

2023

59,056

346,731

XML 24 R38.htm IDEA: XBRL DOCUMENT v3.20.1
Nature of Business (Details)
3 Months Ended
Mar. 31, 2020
segment
Nature of Business  
Number of reportable segments 5
Carlsbad  
Nature of Business  
Ownership percentage 50.00%
XML 25 R17.htm IDEA: XBRL DOCUMENT v3.20.1
Derivative Instruments
3 Months Ended
Mar. 31, 2020
Derivative Instruments  
Derivative Instruments

Note 9 — Derivative Instruments

We are exposed to certain market risks related to changes in interest rates. To monitor and manage these market risks, we have established risk management policies and procedures. We do not enter into derivative instruments for any purpose other than hedging interest rate risk. None of our derivative instruments are used for trading purposes.

Interest Rate Risk. We are exposed to variable interest rate risk as a result of variable-rate borrowings under our Credit Agreement. To manage fluctuations in cash flows resulting from changes in interest rates on a portion of our

variable-rate debt, we entered into an interest rate swap agreement on September 13, 2018 with an initial notional amount of $165.0 million, or 75% of the debt outstanding under our Term Loan, which was not designated as a hedge for accounting purposes. The notional amount of the swap will be adjusted down each quarter by 75% of the required principal payments made on the Term Loan. The swap effectively changes the variable-rate cash flow exposure on the debt obligations to fixed rates. The fair value of outstanding interest rate swap derivatives can vary significantly from period to period depending on the total notional amount of swap derivatives outstanding and fluctuations in market interest rates compared to the interest rates fixed by the swaps. As of March 31, 2020, and December 31, 2019, our outstanding interest rate swap agreement contained a notional amount of $150.6 million and $152.6 million, respectively, with a maturity date of July 10, 2023.

Credit Risk. By using derivative instruments to economically hedge exposures to changes in interest rates, we are exposed to counterparty credit risk. Credit risk is the failure of a counterparty to perform under the terms of a derivative contract. When the fair value of a derivative contract is positive, the counterparty owes us, which creates credit risk for us. When the fair value of a derivative contract is negative, we owe the counterparty and, therefore, we do not possess credit risk. We minimize the credit risk in derivative instruments by entering into transactions with high quality counterparties. We have entered into netting agreements, including International Swap Dealers Association (“ISDA”) Agreements, which allow for netting of contract receivables and payables in the event of default by either party.

The following table summarizes the fair value of our derivative contracts included in the Condensed Consolidated Balance Sheets (in thousands):

    

    

    

March 31, 

    

December 31, 

 

Balance Sheet Location

2020

2019

 

Interest rate swap

Other long-term liabilities

11,414

6,443

Total derivatives

$

11,414

$

6,443

The following table summarizes the amounts recognized with respect to our derivative instruments within the Condensed Consolidated Statements of Operations (in thousands):

Three Months Ended

Location of Loss Recognized

March 31, 

    

on Derivatives

2020

    

2019

 

Interest rate swap

 

Interest expense

$

5,435

$

1,596

Cash flows from derivatives settled are reported as cash flows from operating activities.

XML 26 R13.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue
3 Months Ended
Mar. 31, 2020
Revenue  
Revenue

Note 5—Revenue

We generate revenue under a range of contracting types, including fixed-price, unit-price, time and material, and cost reimbursable plus fee contracts. A substantial portion of our revenue is derived from contracts that are fixed-price or unit-price and is recognized over time as work is completed because of the continuous transfer of control to the customer (typically using an input measure such as costs incurred to date relative to total estimated costs at completion to measure progress). For time and material and cost reimbursable plus fee contracts, revenue is recognized primarily on an input basis, based on contract costs incurred as defined within the respective contracts. Costs to obtain contracts are generally not significant and are expensed in the period incurred.

We evaluate whether two or more contracts should be combined and accounted for as one single performance obligation and whether a single contract should be accounted for as more than one performance obligation. ASC 606 defines a performance obligation as a contractual promise to transfer a distinct good or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. Our evaluation requires significant judgment and the decision to combine a group of contracts or separate a contract into multiple performance obligations could change the amount of revenue and profit

recorded in a given period. The majority of our contracts have a single performance obligation, as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contract and, therefore, is not distinct. However, occasionally we have contracts with multiple performance obligations. For contracts with multiple performance obligations, we allocate the contract’s transaction price to each performance obligation using the observable standalone selling price, if available, or alternatively our best estimate of the standalone selling price of each distinct performance obligation in the contract. The primary method used to estimate standalone selling price is the expected cost plus a margin approach for each performance obligation.

As of March 31, 2020, we had $2.08 billion of remaining performance obligations. We expect to recognize approximately 58% of our remaining performance obligations as revenue during the next four quarters and substantially all of the remaining balance by the first quarter of 2022.

Accounting for long-term contracts involves the use of various techniques to estimate total transaction price and costs. For long-term contracts, transaction price, estimated cost at completion and total costs incurred to date are used to calculate revenue earned. Unforeseen events and circumstances can alter the estimate of the costs and potential profit associated with a particular contract. Total estimated costs, and thus contract revenue and income, can be impacted by changes in productivity, scheduling, the unit cost of labor, subcontracts, materials and equipment. Additionally, external factors such as weather, client needs, client delays in providing permits and approvals, labor availability, governmental regulation, politics and any prevailing impacts from the pandemic caused by the coronavirus may affect the progress of a project’s completion, and thus the timing of revenue recognition. To the extent that original cost estimates are modified, estimated costs to complete increase, delivery schedules are delayed, or progress under a contract is otherwise impeded, cash flow, revenue recognition and profitability from a particular contract may be adversely affected.

The nature of our contracts gives rise to several types of variable consideration, including contract modifications (change orders and claims), liquidated damages, volume discounts, performance bonuses, incentive fees, and other terms that can either increase or decrease the transaction price. We estimate variable consideration as the most likely amount to which we expect to be entitled. We include estimated amounts in the transaction price to the extent we believe we have an enforceable right, and it is probable that a significant reversal of cumulative revenue recognized will not occur. Our estimates of variable consideration and the determination of whether to include estimated amounts in the transaction price are based largely on an assessment of our anticipated performance and all information (historical, current and forecasted) that is reasonably available to us at this time.

Contract modifications result from changes in contract specifications or requirements. We consider unapproved change orders to be contract modifications for which customers have not agreed to both scope and price. We consider claims to be contract modifications for which we seek, or will seek, to collect from customers, or others, for customer-caused changes in contract specifications or design, or other customer-related causes of unanticipated additional contract costs on which there is no agreement with customers. Claims can also be caused by non-customer-caused changes, such as rain or other weather delays. Costs associated with contract modifications are included in the estimated costs to complete the contracts and are treated as project costs when incurred. In most instances, contract modifications are for goods or services that are not distinct, and, therefore, are accounted for as part of the existing contract. The effect of a contract modification on the transaction price, and our measure of progress for the performance obligation to which it relates, is recognized as an adjustment to revenue on a cumulative catch-up basis. In some cases, settlement of contract modifications may not occur until after completion of work under the contract.

As a significant change in one or more of these estimates could affect the profitability of our contracts, we review and update our contract-related estimates regularly. We recognize adjustments in estimated profit on contracts under the cumulative catch-up method. Under this method, the cumulative impact of the profit adjustment is recognized in the period the adjustment is identified. Revenue and profit in future periods of contract performance are recognized using the adjusted estimate. In the three months ended March 31, 2020, revenue recognized from performance obligations satisfied in previous periods was $3.6 million. If at any time the estimate of contract profitability indicates an anticipated loss on a contract, the projected loss is recognized in full, including any previously recognized profit, in the period it is identified and recognized as an “accrued loss provision” which is included in “Contract liabilities” on the Condensed Consolidated Balance Sheets. For contract revenue recognized over time, the accrued loss provision is adjusted so that the gross profit for the contract remains zero in future periods.

At March 31, 2020, we had approximately $94.4 million of unapproved contract modifications included in the aggregate transaction prices. These contract modifications were in the process of being negotiated in the normal course of

business. Approximately $80.6 million of the contract modifications had been recognized as revenue on a cumulative catch-up basis through March 31, 2020.

In all forms of contracts, we estimate the collectability of contract amounts at the same time that we estimate project costs. If we anticipate that there may be issues associated with the collectability of the full amount calculated as the transaction price, we may reduce the amount recognized as revenue to reflect the uncertainty associated with realization of the eventual cash collection. For example, when a cost reimbursable project exceeds the client’s expected budget amount, the client frequently requests an adjustment to the final amount. Similarly, some utility clients reserve the right to audit costs for significant periods after performance of the work.

The timing of when we bill our customers is generally dependent upon agreed-upon contractual terms, milestone billings based on the completion of certain phases of the work, or when services are provided. Sometimes, billing occurs subsequent to revenue recognition, resulting in unbilled revenue, which is a contract asset. Also, we sometimes receive advances or deposits from our customers before revenue is recognized, resulting in deferred revenue, which is a contract liability.

The caption “Contract assets” in the Condensed Consolidated Balance Sheets represents the following:

unbilled revenue, which arise when revenue has been recorded but the amount will not be billed until a later date;

retainage amounts for the portion of the contract price earned by us for work performed, but held for payment by the customer as a form of security until we reach certain construction milestones; and

contract materials for certain job specific materials not yet installed, which are valued using the specific identification method relating the cost incurred to a specific project.

Contract assets consist of the following (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Unbilled revenue

$

268,282

$

251,429

Retention receivable

78,216

81,393

Contract materials (not yet installed)

 

12,872

 

11,984

$

359,370

$

344,806

Contract assets increased by $14.6 million compared to December 31, 2019 due primarily to higher unbilled revenue.

The caption “Contract liabilities” in the Condensed Consolidated Balance Sheets represents deferred revenue on billings in excess of contract revenue recognized to date, and the accrued loss provision.

Contract liabilities consist of the following (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Deferred revenue

$

171,553

$

186,081

Accrued loss provision

 

5,294

 

6,316

$

176,847

$

192,397

Contract liabilities decreased by $15.6 million compared to December 31, 2019 due primarily to lower deferred revenue.

Revenue recognized for the three months ended March 31, 2020, that was included in the contract liability balance at December 31, 2019 was approximately $97.9 million.

The following tables present our revenue disaggregated into various categories.

Master Service Agreements (“MSA”) and Non-MSA revenue was as follows (in thousands):

For the three months ended March 31, 2020

 

Segment

MSA

Non-MSA

Total

Power

$

37,095

159,098

196,193

Pipeline

46,732

144,791

191,523

Utilities

 

104,011

43,159

147,170

Transmission

81,774

21,010

102,784

Civil

 

796

104,777

105,573

Total

$

270,408

 

$

472,835

 

$

743,243

For the three months ended March 31, 2019

 

Segment

MSA

Non-MSA

Total

Power

$

49,195

 

$

96,188

 

$

145,383

Pipeline

21,849

112,965

134,814

Utilities

 

119,462

 

 

26,744

 

 

146,206

Transmission

101,723

16,720

118,443

Civil

 

650

 

 

116,062

 

 

116,712

Total

$

292,879

 

$

368,679

 

$

661,558

Revenue by contract type was as follows (in thousands):

For the three months ended March 31, 2020

 

Segment

Fixed-price

Unit-price

Cost reimbursable (1)

Total

Power

$

144,850

181

51,162

196,193

Pipeline

15,345

81,830

94,348

191,523

Utilities

 

24,089

80,639

42,442

147,170

Transmission

13,636

88,789

359

102,784

Civil

 

19,859

75,447

10,267

105,573

Total

$

217,779

 

$

326,886

 

$

198,578

 

$

743,243

(1)Includes time and material and cost reimbursable plus fee contracts.

For the three months ended March 31, 2019

 

Segment

Fixed-price

Unit-price

Cost reimbursable (1)

Total

Power

$

75,143

 

$

6,613

 

$

63,627

 

$

145,383

Pipeline

17,227

374

117,213

134,814

Utilities

 

22,767

 

 

67,878

 

 

55,561

 

 

146,206

Transmission

8,463

105,841

4,139

118,443

Civil

 

22,685

 

 

78,494

 

 

15,533

 

 

116,712

Total

$

146,285

 

$

259,200

 

$

256,073

 

$

661,558

(1)Includes time and material and cost reimbursable plus fee contracts.

Each of these contract types has a different risk profile. Typically, we assume more risk with fixed-price contracts. Unforeseen events and circumstances can alter the estimate of the costs and potential profit associated with a particular fixed-price contract. However, these types of contracts offer additional profits when we complete the work for less cost than originally estimated. Unit-price and cost reimbursable contracts generally subject us to lower risk. Accordingly, the associated fees are usually lower than fees earned on fixed-price contracts. Under these contracts, our profit may vary if actual costs vary significantly from the negotiated rates.

XML 27 R59.htm IDEA: XBRL DOCUMENT v3.20.1
Leases - Components of Lease Expense and Operating Lease Liabilities (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Dec. 31, 2019
Options to extend leases true    
Components of lease expense      
Operating lease expense $ 22,978 $ 16,513  
Operating lease liabilities      
Accrued liabilities $ 79,532   $ 74,036
Operating Lease, Liability, Current, Statement of Financial Position [Extensible List] Accrued Liabilities, Current    
Noncurrent operating lease liabilities, net of current portion $ 176,546   171,225
Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List] Noncurrent operating lease liabilities, net of current portion    
Operating lease liabilities $ 256,078   $ 245,261
Maximum      
Renewal term 5 years    
EXCEL 28 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( *>.I% ?(\\#P !," + 7W)E;',O+G)E;'.MDD^+ MPD ,Q;]*F?L:5\'#8CUYZ6U9_ )Q)OU#.Y,A$[%^>X>];+=44/ 87O+>CT?V M/S2@=AQ2V\54C'X(J32M:OP"2+8ECVG%D4)6:A:/FD=I(*+ML2'8K-<[D*F' M.>RGGD7E2B.5^S3%":4A+,*P).B0\5?UX^8 TBTH_0(:+L A#&^NQT:E8(C M-R."?S]PN -02P,$% @ IXZD4"?HAPZ" L0 ! !D;V-0&UL38Y-"\(P$$3_2NG=;BGH06) L$?!D_>0;FP@R8;-"OGYIH(? MMWF\81AU8\K(XK%T-8943OTJDH\ Q:X831F:3LTXXFBD(3^ G/,6+V2?$9/ M-(X'P"J8%EQV^3O8:W7..7AKQ%/25V^9"CGIYFHQ*/B76_..7+8\#?NW_+"" MWTG] E!+ P04 " "GCJ107W8T5.\ K @ $0 &1O8U!R;W!S+V-O M&ULS9+!3L,P#(9?!>7>.LT82%'7"X@32$A, G&+'&^+:-HH,6KW]J1E MZX3@ 3C&_O/YL^0:@\8^TG/L T5VE*Y&WW9)8]B( W/0 D/Y$TJ'\C'L(!C_,GD!)>0.>V%C#!B9@$1:B:&J+&B,9[N,);W'!A\_8SC"+0"UY MZCA!558@FFEB.(YM#1? !&.*/GT7R"[$N?HG=NZ ."7'Y);4, SEL)IS>8<* MWIX>7^9U"]I]< M?_A=A'UOW<[]8^.S8%/#K[MHO@!02P,$% @ IXZD4)E&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T M$W-I=MNTF83M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY M\^XN8NB&B)3R> +]O6N[!3+UES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4? M,_@5RU2-9:,!$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA M5,+$P&IG/U9KQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M M&N#C\7@XMLO2BW A(5M>5 TR 6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T M1G*=D 4. #?$T4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH]5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J M-2S%UGB5P/&MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2. MFJW"$2M"/F(9-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$. M$9)>-T(^8LZ+D!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]07 M2N0/)J<_Z3(T!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL! M_]':-\*K^(+ .7\N?<^E[[GT/:'2MSAD M6R4)RU3393>*$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W MF)&Y"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>( M\J(A[J&&F,_#0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R M4E5@,5O& RN0HGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K> M9;'!51W/55ORL+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4X MOT4SMA*7&+SCYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5 MYYN MTB42%(JP# 4A%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+ MA=OB5,V[&KXF8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'YA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> , M?-2K6J5D*Q$_2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H: M,]6+K#F-"F]!U4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ M 5!+ P04 " "GCJ10P^8D[C,# Z#P & 'AL+W=O2. E:P!2< M9/OW-8:EU&?HK1N9'2VI+"(>Q[.HS/(JW*SLV'.S6:FK+O)*/C=!>RW+ MK/F]E86ZKT,6O@^\Y.>+[@:BS:K.SO*;U-_KY\8\16.58U[*JLU5%33RM Z? MV.-.\(Y@$3]R>6\G]T&WE+U2K]W#Y^,ZC+L9R4(>=%;W,FBZ"J9>?P: MBH:C9D>^W^29*!A A\(?"0(\5^" M& AB)#"K$/4SLTO]D.ELLVK4/6AZM^JLVQ3L49B7>>@&[;NS_YG5MF;TMHE7 MT:TK,R"V/8)/$&Q$1*;V*,"1P)83.O]78$<1 @L(N )AZ6)"3S ]@?3$TI,) M/75> $7,L$ *!5)"GSL"%+' C,H,"/TI2- $2S&"G.H,*=\YD@ ",<2"RBQ MH'SA2 "(Q^DEE%A2OFLU@'B\9C&.4TPKN'8CC,=PY@DMHQ5TQG,+E/ MC-,*KNT(X_&=X?@R02NXSB.,QWJ&4\YHB+EK/L+XW,=19S3)G+@/,#[W<=X9 MC3,G[E.,\+F/,\]HH@5Q'V!\[N/8,QIJ0=P'&)_[./F,YEH0]P'&H\)Q]CG- MM9@Y*@@S]ZC@['.::[%P5<#YX'&?X^QSFFOA[C& \:K@['.:Z\3]_ 8KPK. M/J>Y3MR=C#">G+N9(3Q[3&>L1W; M*T J5%4KM=+J5&VOLXMW02<0FF27TW]?)V01S(RW-^2#=^S7]OBQX\6Y:;]U MNQC[V?=#?>R6\UW?GQZ*HGO>Q4/5?6E.\9C^>6G:0]6GQ_:UZ$YMK+9CT*$N M4*FR.%3[XWRU&-\]MJM%\];7^V-\;&?=V^%0M?^N8]V7ILTU-Q+66[/\1CMV^.LS:^+.<_PL-&VR%@5/RUC^?NYGXV M-.6I:;X-#[]NEW,U.(IU?.Z'(JIT>8^;6-=#2J_]]M^MYS[^6P;7ZJWNO_:G'^)4X/L?#:U_K?X'NLD'YRD.IZ; MNAM_9\]O7=\EZ*;D;C1Q4_)&.Z,",2.HT"DC>W&B%\>]D'18.U9+@+(L+3$C MR9(;)[OQHAO/W9!JUIX/0*E#(!VX$63.>I^9D$%T$[B;DK@)K!JT&H# 8R/( M#&IO93>@9$@I[H=12K&:0 6:Q)(*E,JXR2 3N!M/W0"KIW2&4FDCR8+'#/Q MIB<@]Q.H'^3C !8439[_U]T[DGD,',@4)^M)2UTD"I4IT/!(>D"ZI"A*LA8!"+F6(RJS' M(*,5.%L=92L(U/2!30U!%2###I3)BIRLCI(5.3,M&DU9)LELF=O(H]Z:7:LD>]GK7(, MC(+,6)^;\RB3&CFI/24U<@(#0KB=0),C2:A4T+DQDUF-G-6>LEK24 I]KKEW M(C,:/5L)A>6MHYDDY#6G RCF2::DY3ND=?:T[)'])G%U!#7.8R M::,SQP8*IN=123Z LZ&Y@$(N^I3,Y,_:B!U_*U'8T M$% HI(Y 5'.#'"C5@13&KRFF/6^IC5RYD(R!G]V92R3NW8MDJH MR)7*)S9\ABD?;%M3\E_A!E3)-8G:HV!4F+=57(5D[11%H;3D=6R;SK3#N(*C MR;9O\":#-QO'6>A)P@2=--Q)LGC*/$6$N]>D6\5.)XE2.T_0WB[$)[Q^PM_'.[[_5V_ M;_S!,@F\2F*41$;2&8ESSA $>K@\SWA&&(7?\O7SS<)0JW1/&**'POT9YPEP@M M+H4N4M\(OS2=L,Y,JOME;D'%F 05U#FH>+6JB_. 0B5U-U)]/E:'<2!9/Q4^ M-%??[ ]02P,$% @ IXZD4-=YM923 P .@\ !@ !X;"]W;W)K-Q^R: \WCF-\8\,*NK[K[W)Z5,\*.IVWX=GHPY/T51 MOSNIINP?]5FU]I^#[IK2V,ON&/7G3I7[<5)31RR.TZ@IJS;U;_*?#F_=/8JND795XUJ M^TJW0:<.Z_ 9GK9,#!-&Q==*7?O%>3"4\JKU]^'B[_TZC J'8_7.?[[-'H" MFR>PVP00OYW YPG\UX1D+'XB&TO]4)IRL^KT->BFNW4NATT!3]PNYFX8'-=N M_,]6V]O1MXV4J^AMB#-+BDG"%A*X*2(;_):!41D*YDQG]PFVK@+BF$[!R2+X M&(#?!? P)F2 9 R0W 5 E,6D24=-.VJRA+.$HV)<69J"$#F-(T@<0>"@/,6D M$]@S,A<&;NYA% MRT0L!TSCBGCBN=% NQUP @8P#'>KEN N#B$30C(/$.V>0-@GSE3,HOM,+'76 MQY7QS/=0 FV?0/@G8/\$UQE!L SCN*J'3/IV,FV?0/@G8/\$UQKM+N4)YG%E MUK-2#P_MH$!8*& +!=<='_"[A=+(W+>9:0<%PD(!6^@L2M'B.#?+E8%,?"9( MVRA(@B?#/),H7R2*'['Q;_^DNO]VHCV9Q:ZM@^?ES6@C9821 C;26227*VQA M\2N3D%E5XN&AO9017LJPE\ZB_$\\KNPW/+2=,N+KD?F^<&D#9(0!XE=\P5QG M2W+A?)40,A%GOO<5HQV0$0[(L ,RU]M((%.]7HUBYO_@=02P,$% @ IXZD4, Q M:;Q$ @ TP8 !@ !X;"]W;W)KP^P(4!$D"Y452NU4G35M<\.V01T!E/;"=>_KVT(QX&O+]A>9F=GC%EG M/>,OH@*0SFM#6[%S*RF[K>>)LH*&B ?60:O>G!EOB%1+?O%$QX&<3%)#/>3[ M&Z\A=>OFF8D=>)ZQJZ1U"P?NB&O3$/YW#Y3U.S=P[X&G^E))'?#RK",7^ GR MN3MPM?(FEE/=0"MJUCHC&;.]K)D;$7O?AVVKF^%@04 M2JD9B!IN4 "EFDC)^#-RNE-)G3B?W]F_&._*RY$(*!C]79]DM7,3USG!F5RI M?&+]5QC]1*XSFO\.-Z *KI6H&B6CPCR=\BHD:T86):4AK\-8MV;L1_Y[FCT! MC0EH2E"U_Y> QP3\EA :\X,R8_4SD23/..L=/GRLCN@S$6RQVLQ2!\W>F7?* MK5#16QZ@,/-NFFC$[ <,FF,FA*?8IQ+(5F*/5NGH?8%BC0A\WUX"6UU@0X#? MN8CL!*&5(#0$X9P@6&[#@-D83&LPGW",%ZABC4(IWMBU1%8MD<7,!P0;*\%F M;0;%"S,#)IJ;"6*\0!5K%(Y#NY38*B6V2$D64N*UE"B,@X64-0KCX(-#DEBU M))9O'"VT)&LM>"'$ DF3U"XDM0I)+9N2+H2DZ\.F-F5YV-8HA-'RY_1FO: ! M?C%M4S@EN[92_W6SZ-29'Y'N)8OX7G7LH<&^T0SM_@?AE[H5SI%)U:E,/SDS M)D%I]!_45E7JAID6%,Y23V,UYT.?'1:2=>,5XDWW6/X/4$L#!!0 ( *>. MI%!KC?6/4P0 &X4 8 >&PO=V]R:W-H965T&ULC5C; MCMI($/T5Y'=B]]T> =(R#.Q*66F4*-EG#S0#BHU9VS,D?[_M2QBZJFSV!5\X M576ZNGU.V[-+4?ZH#M;6DY]Y=JKFP:&NSP]A6&T/-D^K3\79GMP_^Z+,T]I= MEJ]A=2YMNFN#\BSD4:3#/#V>@L6LO?=<+F;%6YT=3_:YG%1O>9Z6OY8V*R[S M@ 6_;WPYOA[JYD:XF)W35_O5UM_.SZ6["J]9=L?JIOS23.4EZ+XT5S\M9L'4WO9/M6U47>9W%4\O1G=SR>VN.E^\>(/HP.X'T OP:P\0#1 M!XAK #>C ;(/D!\5XM$ U0>H:X#4HP&Z#] ?E-1H@.D#S >E;@*[[K;3M4KK M=#$KB\ND[%;<.6T6-GLP;D%LFYOM_+?_N1FKW-WW!1/1+'QO$O6898?A-QC) M?<@CAC#!?,R*PH \3Q1&^)@UA9$^9D-AU!43NI9<^\+)OO V@?02:-"7#J-; MS*G%*- 6C&!21C(&G<$PJ5ED0+8G#)LF$)4&$B@R@<)4&5@Q*X6HLD2"\:PQ*(D3 MT%N,X,IY$;$ T-.R#H)40>*78+JR!BLE,TXQB/"(EJ9(X**@+H; M$6.&NHLQTQN0SV7 )1C!14)=9KB.@KH\BO&IT,+,"&66"@Z9XS(B4G!9WH7Y MA&@=9(002F@5/6C,*Q@62R8-AP*_(G!2)8F""D'@I@H:Y9I .9& JYE .8,2 M\=#4T3K.)-$I:!D]R/>,6/(D&EJRM.8S0O2A\2Y[T.BT$)IOT!YI1<"48#QA M<%8PSF@X)X0713R&6#U\8%=/F0>T=XY=029P MEW<'Y).AC8-3Q@$-GA-J#]\>"*$?F@!:F#DAS JM!RS,4R,2]&IQ#^83HL6; M$^(-W7O)L0!.W7M3+ ;\F],*R"D%A!L*CA5PRN,$;F_NPGQ"M$IR8MNM.!R\ MN?_RB2&)>Z[0\B$R<:D5>OO$N"E#6_TU 7,[!;CS(E":*2F'UBUM!IPP R5@ MI["$RY@KJ0R[OM'P]GJK)2U'71=Y^)=D716U=UNB3RW>PZ>YZ MD=E]W9P:=UYV7\"ZB[HX]U_WPNLGQL5_4$L#!!0 ( *>.I% !52-($0( M +4& 8 >&PO=V]R:W-H965T&ULC97MCJ(P%(9OA7 ! ME@\%-$BRZCB:["9F-KO[N\)1R!3*ME5F[W[;TF'$(0Y_:$_[O&]/2S_BAK)7 MG@,(ZZTD%5_:N1#U B&>YE!B/J$U5++G1%F)A0S9&?&: 6Q/0B2%'!@5G\4I:8_5L!H)7?6 R M0IU+5I10\8)6%H/3TO[F+O:^XC7PNX"&W]0M-9,CI:\JV&=+VU$) 8%4* X I&XRD2.D5+"]==*+US0TKC(5$K\UI9%I$;@ M=0)W^E#@&X$_5C U@NE8PDW#UFUF?60TS09S9#3-AGGH:8J,]LAYAYGWD>8 *GS^P^,UZ?V ^X.!\N2*YL MM[S>X/)ZVL#OI>$.&_B#!KXVF/8,[K)1E'; M4=3S*&K74M%#:/\%U"XWNCD:ZD+_@=FYJ+AUI$*>,GT63I0*D(;.1-X0N7Q# MNH# 2:AJ*.NLO4G;0-#:/!*H>ZF2_U!+ P04 " "GCJ10VU<(,@X% E M&0 & 'AL+W=O;?7AJ)]W;;E>W_Y5AVQP?IFKZ<>/K MYG7=#S=FB_FA?@U_A?[;X:F-5[-+E-5F%_;=IME/VO#R,'U4]Y7)AP:CXN]- M.'97WR=#*L]-\WVX^'WU,,T&1V$;EOT0HHX?[Z$*V^T0*?KX]QQT>NES:'C] M_2/ZKV/R,9GGN@M5L_UGL^K7#U,WG:S"2_VV[;\VQ]_".:%\.CEG_T=X#]LH M'YS$/I;-MAO_3I9O7=_LSE&BE5W]X_2YV8^?QW/\CV:X 9T;T*6!RC]MH,\- M],\&9DS^Y&Q,]9>ZKQ?SMCE.VM-H'>IA4JA['1_F1U@;WDT$L.DLEQ@ (&*&0R1<&2.6GR M*YO*6V]9,E)%RJ:&QD(S%IAAW916=&.\9U: QEELQ$$C#AAQS(@3G=R15HI9 M0:KX7+ 9#\UX8(9E7'KP5&S&O$B1,B9A1648 9DTP_LISZ*;CASQ)P-4+C%; M5()'2LY^F\"-@KQY5 3R(9X/R4%4VHNQ1CHREBAA"?-):6&I$(XT<)07CL,2 MZ4B32QC"O%, >%9PW\B>C#-\92(9Q663,(2AIW)A2,[!7.(HX_P%(N52HX7Y MJ21 Y;,!:-1>[ 9 =I=[Y5.CA1FJ)$0MWYV4!&2TL-7R;KI#,4N83U0UA/!,!PJ="8)R2Q*FR MO*@@P$DO-W,D4T;;Q!0DS%-"/.75!4E0%CX3Q;!4&9T"!F&:DJ2IF.PE25+& MK2WC:P+)O+^*=FL((Y4*.>BIRH P! E4DDZ,)B@3LRQ5L1+&&P&\B6V8 +D^ MZPJCBT AZ/A>0Y)*A$S6FEP;%I>,O5QH4C396!XF>$N^T '*. M0TZC8M"+;1;)=&92AC#C-&"K0C)*; (:,TX#QO%JI]0 7BH^ M'^%'ZN+^EYJHF'$:O'=[7L-J4#?F8KBD2%-B0]*8EAK0TBMN!M2,5#C%68=T MUF8VL2EIC%4-L.IY8:1!U4@9\256(5VNLE2IIC%^-<"OY_C5$JRQT.?U;@5D M< ], 8&I^ M(%(A59R%"3N8J@90E1][E4;B,@ZX*!V!S+G4NXM)'#P:,.")=64P" T (3\^ M*\^BFW-))S (5#K+^9O\[.IP>1?:U_$Z7 MZKXZG=C_#'/Z >'/NGW=[+O)<]/WS6X\H'YIFCY$D]F7:'(=ZM7E8AM>^N&K MC=_;T\']Z:)O#N2X^_M1LNIZF[<72:1X#@\I*A^-?7(=@"-,8J[M&T+7.]!5Y'D)(LVVRNF>)"TS*/OI,M M, M)A::@MYN#\=]B(\!#P)&MSB34,G9F*=@?*D+N@F"0$+E P/'[0)W(&4@0AG/ MB9/.*0-P>7YE_Q1KQUK.W,&=D8^B]EU!;RBIH>&#]/=F_ RIGG>4I.*_P@4D MA@=B4*"K_R#TO M]SP\\?:086^JX(RMB'4LKG"$>KP@\V&A,:'XWL\ MVVG,)L.;/OT@-G_C\A=02P,$% @ IXZD4&'205&T 0 T@, !D !X M;"]W;W)K&UL?5/;;M0P$/T5RQ]09[T+5*LD4K<( M@032J@AX]B:3Q*HOP78VY>\9.VD(D/;%]HSGG#DS'N>C=8^^ PCD22OC"]J% MT!\9\U4'6O@;VX/!F\8Z+0*:KF6^=R#J!-**\2Q[R[20AI9Y\IU=F=LA*&G@ M[(@?M!;NUPF4'0NZH\^.!]EV(3I8F?>BA:\0OO5GAQ9;6&JIP7AI#7'0%/1N M=SP=8GP*^"YA]*LSB95ZH%D4! JJ$!D$;E>X!Z4B$JK!M6F:/*GL8-(DK[S+ MP-ZE1V1_PJ=I_R)<*XTG%QOP95/_&VL#H)3L!D>HPP^V& J:$(_O\.RF,9N, M8/OY!['E&Y>_ 5!+ P04 " "GCJ10$)HPSK0! #2 P &0 'AL+W=O MM>EO0SKGAR)BM M.M#"WN O;]IT&CAO&E:9@<#HHX@K1A/DC=,"]G3,H^^LRES')V2/9P-L:/6 MPOPX@<*IH ?ZZGB4;>>"@Y7Y(%KX N[K<#;>8BM++37T5F)/##0%O3\<3UF( MCP'?)$QV+T 99Z;BE9BO\$5U ^/"CQ.2I4-JZD M&JU#O;!X*5J\S+OLXS[--VFZP/8!? 'P%7 7\[ Y453^3CA1Y@8G8N;>#R(\ M\>'(?6^JX(RMB'=>O/7>:\F3+&?70+3$G.88OHDYK!',LZ\I^%Z*$_\+SO?A MZ:["-,+3?RC\C2#;)<@B0?;?$O=B;O](PC8]U6#:.$V65#CV<9(WWG5@[WE\ MDU_A\[1_%J:5O247=/YE8_\;1 =>2G+C1ZCS'VPU%#0N'-_ZLYG';#8<#LL/ M8NLW+G\"4$L#!!0 ( *>.I%!4Z1^3M $ -(# 9 >&PO=V]R:W-H M965TTS MES@)*H04R*7[]S4DS;(MVQ? QN_YV9AL-/;9M0">O&K5N9RVWO<'QES9@A;N MRO30X4UMK!8>3=LPUUL0501IQ7B27#,M9$>++/I.MLC,X)7LX&2)&[06]N<1 ME!ESNJ/OCD?9M#XX6)'UHH$G\-_ZDT6++2R5U- Y:3IBH<[IW>YP3$-\#/@N M872K,PF5G(UY#L;G*J=)$ 0*2A\8!&X7N >E A'*>)DYZ9(R -?G=_9/L7:L MY2PDM)1748E#^T8P/,-?S@9*Y^"]P 87A00GF*(UR<27EX+S1 M,PM*T>)UVF47]W&ZX>D,VP;P&< 7P&W,PZ9$4?E'X46163,2._6^%^&)=P>. MO2F#,[8BWJ%XA]Y+P9/KC%T"T1QSG&+X*F:W1#!D7U+PK11'_A><;\/WFPKW M$;[_A\+?"-)-@C02I/\M<2OFYH\D;-53#;:)T^1(:88N3O+*NPSL'8]O\BM\ MFO:OPC:R<^1L/+YL[']MC >4DESA"+7XP19#0>W#\0;/=AJSR?"FGW\06[YQ M\0902P,$% @ IXZD4,INK:BR 0 T0, !D !X;"]W;W)K&UL?5/1;MLP#/P501]0.4JV%8%MH.DP;, &!!VV/BLV;0N5 M1$^2X^[O)\F.ZZU97RR2/AZ/%)6/:)]Z:%-+3,4^QHRQP'KZ2!HR5NT%K8WP=0.!9T M0R^!!]EV/@98F?>BA>_@?_1'&SRVL-12@W$2#;'0%/1NLS_L(CX!?DH8W^I!J<1SVS!"E: M/$^G-.D<+_SL#3R?\?P%G\JPJ4X2_E%X4>861V*GT?'9[3]%V&JF&FR;ELF1"@>3%GD57?;UCJ<[>8%/R_Y-V%8: M1T[HP\VF^3>('H*4["9L4!?>U^(H:'PT/P3;3ELV.1[[^0&QY167?P!02P,$ M% @ IXZD4.&)_E"U 0 T@, !D !X;"]W;W)K&UL?5-A;]P@#/TKB!]0$N[6=:]P?&7-F"%N[*]-#A36VL%AY- MVS#76Q!5!&G%>))<,RUD1XLL^DZVR,S@E>S@9(D;M!;VYQ&4&7.:TE?'O6Q: M'QRLR'K1P'?P/_J318LM+)74T#EI.F*ASNEM>CCN0WP,>) PNM69A$K.QCP% MXTN5TR0( @6E#PP"MPO<@5*!"&4\SYQT21F Z_,K^Z=8.]9R%@[NC'J4E6]S M>D-)!;48E+\WXV>8ZWE'R5S\5[B PO"@!'.41KFXDG)PWNB9!:5H\3+MLHO[ M.-WLTAFV#> S@"^ FYB'38FB\H_"BR*S9B1VZGTOPA.G!XZ]*8,SMB+>H7B' MWDO!DP\9NP2B.>8XQ?!53+I$,&1?4O"M%$?^%YQOPW>;"G<1OON'PM\(]IL$ M^TBP_V^)&S%I\D<2MNJI!MO$:7*D-$,7)WGE70;VEL0N?IOV;L(WL'#D; MCR\;^U\;XP&E)%6R 0 T@, !D !X;"]W;W)K&UL?5-A;]P@#/TKB!]0+ERV5:]P?&7-F"%N[*]-#A36VL%AY-VS#7 M6Q!5!&G%^&[WD6DA.UIDT7>R168&KV0')TO$T:W.)%1R-N8Q&'=5 M3G=!$"@H?6 0N%W@%I0*1"CC:>:D2\H 7)]?V+_$VK&6LW!P:]2#K'R;TVM* M*JC%H/R]&;_"7,\'2N;BO\$%%(8')9BC-,K%E92#\T;/+"A%B^=IEUW-B6*RC\++XK,FI'8J?>]"$^<'#CVI@S.V(IXA^(=>B\% M3Y*,70+1''.<8O@JYC6"(?N2@F^E./*_X'P;OM]4N(_P_3\4OB%(-PG22)#^ MM\2MF/4LKO"$6KQ@RV&@MJ'XR<\VVG,)L.;?OY!;/G&Q1]02P,$% @ IXZD M4'48[(BS 0 T@, !D !X;"]W;W)K&UL?5-A M;]P@#/TKB!]0+ES65:R168&KV0')TODZ8B%.J?WR>&8AO@8\$W"Z%9G$BHY&_,2C*%!">8HC7)Q)>7@O-$S"TK1XFW:91?W<;KA5]@V@,\ MO@#N(H!-B:+R#\*+(K-F)';J?2_"$R<'CKTI@S.V(MZA>(?>2\&3?<8N@6B. M.4XQ?!63+!$,V9<4?"O%D?\%Y]OP_:;"?83O_Z'P-X)TDR"-!.E_2]R*2?]( MPE8]U6";.$V.E&;HXB2OO,O WO/X)K_"IVG_+&PC.T?.QN/+QO[7QGA *;L; M'*$6/]AB**A].+['LYW&;#*\Z>.I% V1&N MM $ -(# 9 >&PO=V]R:W-H965T#C$^!7R5,/K5F<1*+M8^1^-#7=!=% 0*JA 9!&Y7 M> 2E(A'*^#YSTB5E!*[/K^SO4NU8RT5X>+3JFZQ#5]![2FIHQ*#"DQW?PUS/ M+25S\1_A"@K#HQ+,45GETTJJP0>K9Q:4HL7+M$N3]G&ZX?L9M@W@,X O@/N4 MATV)DO*W(H@R=W8D;NI]+^(39T>.O:FB,[4BW:%XC]YKR;/;G%TCT1QSFF+X M*B9;(ABR+RGX5HH3_PO.M^'[387[!-__0^%O!(=-@D,B./RWQ*V8NS^2L%5/ M-;@V39,GE1U,FN25=QG8!Y[>Y%?X-.V?A&NE\>1B [YLZG]C;0"4LKO!$>KP M@RV&@B;$XQL\NVG,)B/8?OY!;/G&Y4]02P,$% @ IXZD4%R,T*FT 0 MT@, !D !X;"]W;W)K&UL?5-A;]L@$/TKB!]0 M8I*N461;:EI-F[1*4:MMGXE]ME'!>(#C]M_WP*[G;5Z_ '?<>_?N.-+!V&?7 M 'CRHE7K,MIXWQT8 M1M_)YJGIO9(MG"QQO=;"OAY!F2&C"7UW/,JZ\<'!\K03-3R!_]Z=+%IL9BFE MAM9)TQ(+549OD\-Q%^)CP \)@UN<2:CD;,QS,+Z6&=T$0:"@\(%!X':!.U J M$*&,7Q,GG5,&X/+\SOXYUHZUG(6#.Z-^RM(W&=U34D(E>N4?S? %IGJN*9F* M_P874!@>E&".PB@75U+TSAL]L: 4+5[&7;9Q'\8;?CW!U@%\ O 9L(]YV)@H M*K\77N2I-0.Q8^\[$9XX.7#L31&>6!O>7R3W^'CM#\(6\O6D;/Q^+*Q_Y4Q'E#*Y@I'J,$/-AL* M*A^.-WBVXYB-AC?=](/8_(WS-U!+ P04 " "GCJ10V/J*B+4! #2 P M&0 'AL+W=OX4]=/ZF1J.%\Z9IF.T-B"J"M&(\26Z8%K*C119])U-D M.#@E.S@98@>MA7D]@L(QIRE]M/QEOL86EDAHZ*[$C M!NJ9 MDRXI W!]?F/_&&OWM9R%A7M4/V3EVIS>4E)!+0;E'G'\!',]UY3,Q7^!"R@? M'I3X'"4J&U=2#M:AGEF\%"U>IEUV<1^G&WX]P[8!? ;P!7 ;\[ I453^03A1 M9 9'8J;>]R(\<7K@OC=E<,96Q#LOWGKOI>#I^XQ= M$<(T65+B MT,5)7GF7@;WC\4U^A4_3_B!,(SM+SNC\R\;^UX@.O)3DRH]0ZS_88BBH73B^ M\V2X^_M1LNNZG;<72:1X#@\I*ANL>_0M0"#/6AF? MTS:$[L"8+UO0PE_9#@S>U-9I$=!T#?.= U$ED%:,;S8?F1;2T")+OI,K,ML' M)0V<'/&]UL+]/H*R0TZW],5Q+YLV1 = M4T;@\OS"_B75CK6[M\!6F>CY0,A7_#2Z@,#PJ MP1RE53ZMI.Q]L'IB02E:/(^[-&D?IIO=!%L'\ G 9\!URL/&1$GY9Q%$D3D[ M$#?VOA/QB;<'CKTIHS.U(MVA>(_>2\'Y-F.72#3%',<8OHAYC6#(/J?@:RF. M_"\X7X?O5A7N$GSW#X5O"/:K!/M$L/]OB6LQ[U6R14\UN"9-DR>E[4V:Y(5W M'M@;GM[D-7R<]N_"-=)X+Q$Y[=.&:C M$6PW_2 V?^/B#U!+ P04 " "GCJ10SBR5([0! #2 P &0 'AL+W=O MT7P,;O^=F8;#3VT;4 GCQKU;F1:2$[6F31=[)%9@:O9 OCH>9-/ZX&!%UHL&OH/_T9\L6FQAJ:2&SDG3$0MU3F_VAV,: MXF/ 3PFC6YU)J.1LS&,P[JJ<[H(@4%#ZP"!PN\ M*!6(4,;3S$F7E &X/K^R M?XFU8RUGX>#6J%^R\FU.KRFIH!:#\@]F_ IS/1\HF8O_!A=0&!Z48([2*!=7 M4@[.&SVSH!0MGJ===G$?IYLDF6'; #X#^ *XCGG8E"@J_RR\*#)K1F*GWORDX3S)V"41SS'&*X:N8_1+!D'U)P;=2'/E_<+X- M3S85)A&>O*'P+X)TDR"-!.F[)6[%I/\D8:N>:K!-G"9'2C-T<9)7WF5@;WA\ MDS_AT[3?"]O(SI&S\?BRL?^U,1Y0RNX*1ZC%#[88"FH?CI_P;*4;%[\!4$L#!!0 ( *>.I% =(M;%M $ -(# 9 >&PO=V]R:W-H M965T6_>#$,^HGUV'8 G+UH95]#.^_[(F*LZT,+= M8 \FW#1HM?#!M"USO051)Y!6C.]V=TP+:6B9)]_9ECD.7DD#9TOA#=CP=8GP*^"IA M=*LSB95<$)^C\:$NZ"X* @65CPPB;%=X!*4B49#Q?>:D2\H(7)]?V=^EVD,M M%^'@$=4W6?NNH/>4U-"(0?DG'-_#7,\M)7/Q'^$**H1')2%'A S@"^ ^Y2'38F2\K?"BS*W.!([];X7\8FS(P^] MJ:(SM2+=!?$N>*\EY[8TQ?!53+9$L,"^I.!;*4[\+SC?AN\W%>X3 M?/\/A;\1'#8)#HG@\-\2MV+N_DC"5CW58-LT38Y4.)@TR2OO,K //+W)K_!I MVC\)VTKCR 5]>-G4_P;10Y"RNPDCU(4/MA@*&A^/;\+93F,V&1[[^0>QY1N7 M/P%02P,$% @ IXZD4'IDY1.S 0 T0, !D !X;"]W;W)K&UL?5-AC]L@#/TKB!]PM+1;JRJ)=+UIVJ1-JF[:[C--G 0= MX Q(<_OW Y++LBW;%\#F^?G9F&Q ^^Q: $]>M#(NIZWWW8DQ5[:@A;O##DRX MJ=%JX8-I&^8Z"Z)*05HQOMF\95I(0XLL^2ZVR+#W2AJX6.)ZK87]<0:%0TZW M]-7Q*)O61P=4\; Y?F5_7VJ/=1R%0X> M4#W)RKV)A]:4T9DZ MD>Z"=A>\MX+S0\9ND6C"G$<,7V"V,X(%]CD%7TMQYG^%\_7PW:K"70K?_4/A M;P3[58)](MC_M\0US/&/)&S14PVV2L_3F_R"C\/^6=A& M&D>NZ,/+IO[7B!Z"E,U=F* V_*_94%#[>#R$LQVG;#0\=M,'8O,O+GX"4$L# M!!0 ( *>.I%!VA'>PM $ -(# 9 >&PO=V]R:W-H965TV96Y&+WL-9TOI\?3(> CX*F'R6W.)%1R,>8Y M&%_J@B8A(9!0^: @<+O" T@9A#"-7XLF74,&XO;\JOXIUHZU7(2#!R-_]K7O M"GI'20V-&*5_---G6.JYI60I_BM<02(\9((Q*B-=7$DU.F_4HH*I*/$R[[V. M^S3?9.E"VR?PA.O:F",[8BWF'R M#KW7DO,/.;L&H05SFC%\@TE7!$/U-03?"W'B_]'Y/CW;S3"+]&Q+SY)]@<.N MP"$*'-XL<0>3_5LDV_14@6WC-#E2F5''2=YXUX&]Y_%-_L+G:?\F;-MK1R[& MX\O&_C?&>,!4DALSG<=L-KP9EA_$UF]<_@%02P,$% M @ IXZD4'PIACJR 0 T@, !D !X;"]W;W)K&UL?5-AC]0@$/TKA!]P[-)5+YNVR>T9HXDFFS/J9[:=MN2 J4"WY[\7:+=6 MK7X!9ICWYLTPY"/:9]/*BE7$%[;SOCXRYJ@,MW!WV8,)-@U8+'TS;,M=; M$'4":<7X;O>::2$-+?/D.]LRQ\$K:>!LB1NT%O;'"12.!=W3F^-)MIV/#E;F MO6CA,_@O_=D&BRTLM=1@G$1#+#0%?=@?3X<8GP*^2AC=ZDQB)1?$YVA\J NZ MBX) 0>4C@PC;%1Y!J4@49'R?.>F2,@+7YQO[NU1[J.4B'#RB^B9KWQ7TGI(: M&C$H_X3C>YCK>47)7/Q'N((*X5%)R%&A \ZIDE2-'B9=JE2?LXW? ; M;!O 9P!? /<)P*9$2?E;X4696QR)G7K?B_C$^R,/O:FB,[4BW07Q+GBO)<]X MSJZ1:(XY33%\%;-?(EA@7U+PK10G_A><;\.S3859@F?_4/@;P6&3X) (#O\M M<2LF^R,)6_54@VW3-#E2X6#2)*^\R\ ^\/0FO\*G:?\D;"N-(Q?TX653_QM$ M#T'*[BZ,4!<^V&(H:'P\O@EG.XW99'CLYQ_$EF]<_@102P,$% @ IXZD M4&/R=3FV 0 T@, !D !X;"]W;W)K&UL;5/; M;MP@$/T5Q >$7=:Y=&5;RB:*4JF55JG:/+/VV$;AX@!>IW]?P,1U$K\ ,\PY M>-NYX"!EWK,6?H'[ MW1^-M\C,4G,)RG*MD(&FP+?;_2$+\3'@#X?1+LXH5'+2^B48W^L";X(@$%"Y MP,#\=H8[$"(0>1FOB1//*0-P>7YG?XBU^UI.S,*=%L^\=EV!;S"JH6&#<$]Z M?(14SR5&J?@?< ;APX,2GZ/2PL8558-U6B86+T6RMVGG*NYCNOF68.L F@!T M!MS$/&1*%)7?,\?*W.@1F:GW/0M/O-U3WYLJ.&,KXIT7;[WW7-)=EI-S($HQ MARF&+F*V>.>!O:7Q3?Z'3]/^DYF6*XM.VOF7C?UOM';@ MI6PN_ AU_H/-AH#&A>.U/YMIS";#Z3[](#)_X_(?4$L#!!0 ( *>.I%"> M!H2"M $ -(# 9 >&PO=V]R:W-H965T_@?O0G MXSVVJ%120V&8!GP$O$@8[4/V4E6MS^D!)!;48E'O&\3/, M_;RC9&[^*UQ >7BHQ.5@'>I9Q9>BQ=MTRBZ>XZQ_I6T3^$S@-P0V M)8J5?Q1.%)G!D9AI]KT(5[P[<#^;,@3C*.(_7[SUT4O!]P\9NP2A&7.<,'R% MV2T(YM67%'PKQ9'_1^?;]/UFA?M(WZ_IR?VV0+HID$:!])\6/]RTN(%)DYLD M;#53#::)VV1)B4,7-WD571;VD<<[^0N?MOV;,(WL+#FC\S<;YU\C.O"E)'=^ MA5K_P!9'0>V"^=[;9EJSR7'8SR^(+<^X^ -02P,$% @ IXZD4-[7@6K2 M 0 G 0 !D !X;"]W;W)K&UL=53;;IPP$/T5 MRQ\0LUY@HQ4@91-%K=1*JU1MG[TP7!0;4]LLZ=_7-H30K?N"/>,SY\R8&6>3 M5*^Z!3#H3?!>Y[@U9C@2HLL6!--WGM12"6:LJ1JB!P6L\D&"$QI%*1&L MZW&1>=]9%9D<#>]Z."ND1R&8^GT"+J<<[_"[XZ5K6N,K].\TER6,+" 70)H&O MO=RK! U)G.@_X30X+XKQ+I38DAS#XL MD@1%D@!!?",2PB1AD30HD@8(TAN1$.9P(T(VW2% -7XN-"KEV/N9W'C7T7N@ MOKL^X//[5/#"S8>2P MO 5D?9"*/U!+ P04 " "GCJ10E_.&G] ! "^Q*X\_-R1SC24:HWW0 8]"YXIS/<&-,?"=%% X+I M.]E#9[]44@EF;*AJHGL%K/0DP0F-H@,1K.UPGOK<6>6I' QO.S@KI #HXO =\ M;V'4JSURG5RD?'/!IS+#D2L(.!3&*3"[7.$).'="MHR?LR9>+!UQO;^IO_C> M;2\7IN%)\A]M:9H,WV-40L4&;E[E^!'F?O88S56(]"('DKQ8?-BT&,/LH;+(/FNP# O'&)(3YSU$<@B:'@,!N8Q+" M)!L3LKH= E3MYT*C0@Z=G\E5=AF]1^IOUQ_X-+=?F*K;3J.+-/:.^IM426G MEA+=V88;^U0L 8?*N.T'NU?3P$R!D?W\%I#E0< M^\$E'="\V@; D3>M6IO1QKGNP)@M&M#"WF 'K;^IT&CAO&EJ9CL#HHPDK1C? M;&Z9%K*E>1I])Y.GV#LE6S@98GNMA?E]!(5#1A-Z=;S(NG'!P?*T$S5\ _>] M.QEOL5FEE!I:*[$E!JJ,/B2'XR[@(^"'A,$NSB144U)")7KE7G#X M!%,]>TJFXK_ !92'ATQ\C *5C2LI>NM03RH^%2W>QEVV<1_&F_V5MD[@$X'/ MA/M(8&.@F/F3<")/#0[$C+WO1'CBY,!];XK@C*V(=SYYZ[V7G._W*;L$H0ES M'#%\@4EF!//JK KLHL/NKQ-L/):YA M[CX$88N>:C!UG"9+"NS;.,D+[SRP#SR^R3M\G/:OPM2RM>2,SK]L['^%Z,"G MLKGQ(]3X#S8;"BH7CG?^;,8Q&PV'W?2#V/R-\S]02P,$% @ IXZD4-S? M\6FX 0 T@, !D !X;"]W;W)K&UL;5/;;IPP M$/T5RQ\0@Y>DFQ4@95-5J=1*JU1-GKTP@!5?B&V6].]K&T)HRHOM&9]SYN)Q M/FKS8CL A]ZD4+; G7/]@1!;=2"9O=(]*'_3:".9\Z9IB>T-L#J2I" T26Z( M9%SA,H^^DRES/3C!%9P,LH.4S/PY@M!C@5/\[GCD;>>"@Y1YSUKX!>YW?S+> M(HM*S24HR[5"!IH"WZ6'8Q;P$?#$8;2K,PJ5G+5^"<;WNL!)2 @$5"XH,+]= MX!Z$"$(^C==9$R\A W%]?E?_%FOWM9R9A7LMGGGMN@+O,:JA88-PCWI\@+F> M:XSFXG_ !82'ATQ\C$H+&U=4#=9I.:OX5"1[FW:NXCY.-]GM3-LFT)E %\(^ MQB%3H)CY5^98F1L](C/UOF?AB=,#];VI@C.V(M[YY*WW7DIZO<_))0C-F..$ MH2M,NB"(5U]"T*T01_H?G6[3=YL9[B)]MZ:GNVV!;%,@BP+9/R7>?BIQ W.3 M? I"5CV58-HX3195>E!QDE?>96#O:'R3#_@T[3^9:;FRZ*R=?]G8_T9K!SZ5 MY,J/4.<_V&((:%PX?O%G,XW99#C=SS^(+-^X_ M02P,$% @ IXZD4&#Y M8Z; 0 -P0 !D !X;"]W;W)K&UL;53;;N,@ M$/T5Q >4F,3=561;:EI576E7BKK:[3.QQQ>5BPLX[O[] G9<-^4E,.-SSIP! M)MFH]*MI 2QZ%UR:'+?6]GM"3-F"8.9&]2#=EUIIP:P+=4-,KX%5@20XH9O- M+1&LD[C(0NZHBTP-EG<2CAJ900BF_QV JS''";XDGKNFM3Y!BJQG#?P&^Z<_ M:A>11:7J!$C3*8DTU#F^2_:'U.,#X&\'HUGMD>_DI-2K#WY4.=YX0\"AM%Z! MN>4,]\"Y%W(VWF9-O)3TQ/7^HOX8>G>]G)B!>\5?NLJV.?Z.404U&[A]5N,3 MS/VD&,W-_X0S< ?W3ER-4G$3?E$Y&*O$K.*L"/8^K9T,ZSCK7VAQ IT)](I MID+!^0.SK,BT&I&>SKYG_HJ3/75G4_ID.(KPS9DW+GLNZ&V2D;,7FC&'"4-7 MF \$<>I+"1HK<:!?Z#1.WT8=;@-]NZ8G:5Q@%Q78!8'=IQ;I58LQS#9>)(T6 M22,"NZLB, @ZU]=MO;J^GMSP%5O7SF)+EOZ+X#U!+ P04 M" "GCJ10. ZV L(! W! &0 'AL+W=ODWTP)8]"Y%9W+<6ML?"3%E"Y*9!]5#Y[[42DMF7:@;8GH- MK HD*0A-DCV1C'>XR$+NK(M,#5;P#LX:F4%*IG^?0*@QQRF^)5YXTUJ?($76 MLP:^@_W1G[6+R*)2<0F=X:I#&NH^0[N2CUYH,O58X3 M;P@$E-8K,+=9^=AC-S7^%*P@']TY;0-^LZ>DA+K"-"FR#P/:?%@]W M+<8PC_$BNVB1743@PUV1".:0W!4AJXN3H)OP9 TJU="%<5EEEZEXHN'B_\*G MD?K&=,,[@R[*NN<3+KE6RH*SDCPX+ZV;XB404%N_/;B]GM[R%%C5SV-*EO^* MX@]02P,$% @ IXZD4%9CY=*V 0 T@, !D !X;"]W;W)K&UL;5/;;IPP$/T5RQ\0+X8VZ0J0LJFJ5FJE5:JVSUX8P(J- MJ6V6].\[-H30E!?;,S[GS,7C?#+VR74 GCQKU;N"=MX/1\9:2%[6N;1=[9E;D:O9 ]G2]RHM;!_3J#,5-"$ MOC@>9=OYX&!E/H@6OH/_,9PM6FQ5J:6&WDG3$PM-0>^3XRD+^ CX*6%RFS,) ME5R,>0K&E[J@AY 0**A\4!"X7>$!E I"F,;O19.N(0-Q>WY1_Q1KQUHNPL&# M4;]D[;N"WE%20R-&Y1_-]!F6>MY1LA3_%:Z@$!XRP1B542ZNI!J=-WI1P52T M>)YWV<=]FF_2;*'M$_A"X"OA+L9A5,$9 M6Q'O,'F'WFO);Y.<78/0@CG-&+[!O"(8JJ\A^%Z($_^/SO?IZ6Z&::2G6WKR M85\@VQ7(HD#V3XG\38E[F/1-$+;IJ0;;QFERI#)C'R=YXUT']I['-WF%S]/^ M3=A6]HY7C?UOC/& J1QN<(0Z_&"KH:#QX7B+9SN/V6QX,RP_B*W?N/P+ M4$L#!!0 ( *>.I%#I^@NRQ $ #<$ 9 >&PO=V]R:W-H965TPW_N+=BNRJ%2= &DZ)9&&.L>/V],Y]?@ ^-'!:%9SY"NY M*O7F%Y^K'&]\0L"AM%Z!N>$&3\"Y%W)I_)HU\6+IB>OYA_I+J-W538C07_P5NP!W<9^(\2L5-^*)R,%:)6<6E(MC[ M-'8RC..TLT]F6IQ 9P)=",?@0R:CD/DSLZS(M!J1GLZ^9_Z*MR?JSJ;TP7 4 M8<\E;UST5M!#DI&;%YHQYPE#5YCM@B!.?;&@,8LS_8].X_1=-,-=H._6=+J+ M"R11@20()/^4F-Z5&,/LXR9IU"2-"!SN3&*8XYT)65V< -V$)VM0J089VF45 M7;KBD8:+_PN?6NHKTTTG#;HJZYY/N.1:*0LNEW M/"VLZN.I%"IZ$.8Q@$ #<$ 9 >&PO M=V]R:W-H965T[^?I+L>D:FO5@B=9&BSO))PU M,H,03/\^ 5=CCC?XP_'2-:WU#E)D/6O@.]@?_5D[BRPJ52= FDY)I*'.\-IY? "\=C":U1[Y2BY*O7GC2Y7CQ"<$'$KK%9A;KO (G'LAE\:O61,O(3UQ MO?]0?PZUNUHNS,"CXC^[RK8Y/F!40G88S<5_A2MP!_>9N!BE MXB9\43D8J\2LXE(1['U:.QG6<3I)[V=:G$!G ET(AQ"'3(%"YD_,LB+3:D1Z MNON>^19OCM3=3>F=X2K"F4O>..^UH/O[C%R]T(PY31BZPFP6!''J2P@:"W&B M_]!IG)Y&,TP#/5W3Z3XNL(T*;(/ =BUP2&Y*C&'^4^0N&F07$: W06*8]"8( M635.@&["DS6H5(,,X[+R+E/Q0$/C_\*GD?K&=--)@R[*NN<3FEPK9<&EDMRY M7%HWQ8O!H;9^NW=[/;WER;"JG\>4+/^*X@]02P,$% @ IXZD4(Q=.5&W M 0 T@, !D !X;"]W;W)K&UL=5/;;MP@$/T5 MQ >$7=9)5RO;4C95E$B-M$K5]IFUQS8*& ?P.OG[#MAQW=1] 68XY\R%(1V, M?7$-@"=O6K4NHXWWW8$Q5S2@A;LR';1X4QFKA4?3ULQU%D0925HQOMG<,"UD M2_,T^DXV3TWOE6SA9(GKM1;V_0C*#!G=T@_'LZP;'QPL3SM1PW?P/[J318O- M*J74T#II6F*ARNCM]G!, CX"?DH8W.),0B5G8UZ"\5AF=!,2 @6%#PH"MPO< M@5)!"--XG33I'#(0E^!MWV<9]&&^2_41;)_")P&?"/L9A M8Z"8^5?A19Y:,Q []KX3X8FW!XZ]*8(SMB+>8?(.O9><[Y.478+0A#F.&+[ M;&<$0_4Y!%\+<>3_T/DZ?;>:X2[2=TOZ[C\"R:I $@62OTJ\_E3B&N;F4Q"V MZ*D&6\=I>&=!_:6QS?Y Q^G_4G86K:.G(W'EXW]KXSQ@*ELKG"$ M&OQ@LZ&@\N'X!<]V'+/1\*:;?A";OW'^&U!+ P04 " "GCJ10"+2%[-T! M "Y! &0 'AL+W=O-%M3&S3>C^_6Q#&$L]J5^P[_S<<\\=/J>C MD*^J =#HC;-.94&C=7_ 6!4-<*KN1 ^=.:F$Y%0;4]98]1)HZ8(XPR0,=YC3 MM@ORU/E.,D_%H%G;P4DB-7!.Y>\C,#%F011<'<]MW6CKP'G:TQJ^@_[1GZ2Q M\,)2MAPZU8H.2:BRX"$Z'!.+=X"7%D:UVB-;R5F(5VM\*;,@M(* 0:$M S7+ M!1Z!,4MD9/R:.8,EI0U<[Z_LGUSMII8S5? HV,^VU$T6[ -40D4'II_%^!GF M>N( S<5_A0LP [=*3(Y",.6^J!B4%GQF,5(X?9O6MG/K.)ULKF'^ #('D"6 M3+5,B9SR)ZIIGDHQ(CGUOJ?V%T<'8GI36*=KA3LSXI7Q7G*R3U)\L40SYCAA MR H3+0ALV)<4Q)?B2-Z%D_W>3[#Q:MPX@LV:( S]!%LOP=81;/]1<']3Y(2) M':9SF-B?(O:FB-^GN/^/QIV78/?Q(A,O0>)1$-T4Z<.0FR1X=74XR-H-C4*% M&#HWL"OO,I=0F>AS05VUZP20H.1$MZ9CC7F'5D,!I6V MV\3LY31-DZ%%/S\4>'FM\C]02P,$% @ IXZD4.HK.,5O @ A@@ !D M !X;"]W;W)K&ULE5;;CILP$/T5Q ($M("I[83MW])%9HPIY[4L M*KEQ,Z7JM>?)-&,EE4^\9I5^N%NTWJ/0.%C$CYPU)W.DDNUY\3,_J6SC+EWGQ,[T6JAGWGQB M74*AZW39?V$W5FBXB41KI+R0]NJD5ZEXV;'H4$KZVM[SRMZ;CO_N!CO@S@'W M#H2\Z4 Z!]([X)5-OHW,IOJ!*IK$@C>.:-]63\"AXE]A FA$4(F >Q!.2!((() M I @L 3! \%B5(@6$UI,U1;"AS5"4",$-)8CC7"J 4M$H$0$2*Q&$A &PR(+ M4&0Q(2"^/Q)I,=$@CT5 <# Z6_LI+(I0&"[A<)9@.$L@G)FBK4""U?L/#_+A M-O+?<7PZT,SY:>OQ-N8QE)F.1D Y\#@4"#1^-R HF D&[/TMP@#%3&,CN+/1 M?[0V@GL;39L;* D$FM.!^QM-&YSXDU/P[P[W!E_ODHF+'7322?FU4N8K.;#V MPW2+S==_9-^9(6NGPE^:=D)_I>*25](Y=U/?ZW\]DC]02P,$% @ IXZD4(9#=)^# @ P@@ M !D !X;"]W;W)K&ULE5;;CILP$/T5Q .(+*<5$4^LH;5Z5O8:+7O+EN+)=K8B6-).: M@JC;E6YI66HFI>-71VKW.77@?]A M"UQ)R/][)6PZT+TO\=B5QZ![,7!5(J@LYUR%:PX%@"71# 5<4R@$5$P^H^'T M'4 835Z5*2S$V!_I<08?^(KRLVF>PLK8I3:=>[#:-^BU9QK$![SM[M\(/Q>U ML Y,JC9CFL&),4F5&/=)>9.K'XI^4M*3U,-(C7G;5=N)9$WWQ^#TORWI'U!+ M P04 " "GCJ10%L*A\/L! C!0 &0 'AL+W=OI7G4#8-";X)W>XL:8_H$073<@F%[('CK[Y225 M8,8NU9GH7@$[^B3!"4V2@@C6=K@J?6ROJE)>#&\[V"ND+T(P]6<'7 Y;G.); MX+D]-\8%2%7V[ P_P/SL]\JNR,1R; 5TNI4=4G#:XL?T8;=R> ]X:6'0LSER ME1RD?'6+K\W\.(S\M[1X AT3Z)1 0RU!R#O_Q RK2B4'I,+>]\S]XO2!VKVI7=!O MA?]FS6L;O599NBG)U1&-F%W T!DFG1#$LD\2-":QH^_2,YK$";*HQ\P39'/] MA,8)\BA![@GR_QRD=T4&3.$QG#/[B*:JXBFOF=9L"D=*:Y3A;+S?RYTR2S0RI G?WU MU*B6E\ZWAEETZ@"/U!_R?_#0/KXS=6X[C0[2V*OB#_1)2@/6F36!46,[UK3@ M<#)NNK)S%>YM6!C9CRV)3'VQ^@M02P,$% @ IXZD4-X.\&O% 0 -P0 M !D !X;"]W;W)K&UL;53M;MP@$'P5Q ,$&Y^3 M]&1;RJ6J4JF13JG:_N;L]8<"Q@%\3MZ^@'VN<^7/P:YG9F>!O6R2ZE6W :] M"][K'+?&#'M"=-F"8/I&#M#;+[54@AD;JH;H00&K/$EP0J/HE@C6];C(?.ZH MBDR.AG<]'!72HQ!,?1R RRG',;XD7KJF-2Y!BFQ@#?P$\VLX*AN15:7J!/2Z MDSU24.?X(=X?4H?W@-\=3'JS1ZZ3DY2O+OA>Y3ARAH!#:9P"L\L9'H%S)V1M MO"V:>"WIB-O]1?V;[]WV^5=F M6)$I.2$UG_W W!7'>VK/IG1)?Q3^FS6O;?9<)#3-R-D)+9C#C*$;3+PBB%5? M2]!0B0/]CT[#]"3H,/'TY)/#V[# +BBP\P*[3P)W5RV&,/?A(FFP2!H0^')5 M)(!)HJLB9'-Q E3CGZQ&I1Q[/RZ;[#H5#]1?_#_X/%+/3#5=K]%)&OM\_"77 M4AJP5J(;ZZ6U4[P&'&KCMG=VK^:W/ =&#LN8DO6_HO@+4$L#!!0 ( *>. MI%!<#]\#.P( & & 9 >&PO=V]R:W-H965TV)U'D_*I8W<*3\.2U::CXNP?&^YT?^>^&Y_I2*6,( MBKRC%_@)ZJ5[$GH53%%.=0.MK'GK"3CO_,=H>R!&;P6_:NCE;.Z92HZ^=X(SO3+US/NO,-:3^-Y8_'>X =-R0Z)SE)Q)^^N55ZEX,T;1* U]&\:Z MM6,_[*31Z.9V0*,#FAQT[O\YX-$!WQUB6_Q 9DO]3!4MKE9JZZW .,J#FPDT:O:#!LTT=T6@HT\ID"O%'JWX,V%D$MOYX#A@B=X#8&2"V >(/I[" W ^:U&K:H8R4(+*LQ2%+HAAMW#B) M$R=QX. %SJ!)9GDR@J)T0;-6D0AOL!LF=<*D#IAX 9.NTD2(9,NC<:BB#8G= M,)D3)EO!I,M[RE99<++!6;B R5;WA..8A*F;ACAIB.-HD@4.6>7Y%,5I&"[R M!+,'VX"XV-XFO9)?6]M79]:I?3XB^^#O\J'W_J#B4K?2.W*EVX9]W&?.%6B: M\$&?2Z7;_;1@<%9FFNFY&)K>L%"\&_MY,'U4BG]02P,$% @ IXZD4(U[ M@/TS @ . 8 !D !X;"]W;W)K&UL?55=CYLP M$/PKB/<>'P8#$2!=4E6MU$K156V?';()Z RFMA.N_[ZVX3@.W+[$]GIV9V83 M;_*!\6=1 TCGI:6=*-Q:RG[G>:*JH27B@?70J9L+XRV1ZLBOGN@YD+-):JD7 M^C[V6M)T;IF;V)&7.;M)VG1PY(ZXM2WA?_9 V5"X@?L:>&JNM=0!K\Q[" M@$(E=06BECL<@%)=2,GX/=5T9TJ=N-R_5O]DO"LO)R+@P.BOYBSKPDU=YPP7 MF,^LPWB1H M2K,GA%-"."88$9XJOI,$=HH]N$F/7Q/<-@BXM3.@*PF MD,E'2X%^:"\060M$ID#TK@O)J@LC!AM,-Y(D01RCE1<++,5^^H^.Q58YL45. MNI(S8N(%3QQFT4K,%H11@.U2L%4*WDA)5B1[O"$)$IQ&J_X=\+8Q68BRQ*XF ML:I)+(W)5G*2C9P/08Q]W\Z36GG2+4_DKWC2C9\LR38TWN(AML"O9F8)IV*W MSLS+170>BX^A> M)FK/QV$V'B3KISGMS7\6Y5]02P,$% @ IXZD4*ZT!"7D!@ LBH !D M !X;"]W;W)K&ULE9K=;N,V$(5?Q? #K/D[0RZ2 M )L410NTP&*+MM?:1$F,M:W45I+MVY>2E:PMGBG(F]A6CBC.6&?XF9J+UV[_ M[?#8MOWB^W:S.UPN'_O^Z>-J=;A];+?-X4/WU.[2?^Z[_;;IT\?]P^KPM&^; MN_&D[69EE*+5MEGOEE<7X['/^ZN+[KG?K'?MY_WB\+S=-OM_K]M-]WJYU,NW M U_6#X_]<&!U=?'4/+1_M/V?3Y_WZ=/J?92[];;='=;=;K%O[R^7G_3'&ZWB M<,8H^6O=OAY.WB^&6+YVW;?APZ]WETLU3*G=M+?],$:37E[:FW:S&89*$_EG M&G7Y?M'AQ-/W;Z/_/$:?HOG:'-J;;O/W^JY_O%R&Y>*NO6^>-_V7[O67=HK( M+Q=3^+^U+^TFR8>9I&O<=IO#^'=Q^WSHN^TT2IK*MOE^?%WOQM?7:?RWT_ ) M9CK!O)^0KOU_)]CI!/OC!#<&?YS9&.I/3=]<7>R[U\7^^'4]-<-=H3_:E,S; MX>"8N_%_*=I#.OIR99V^6+T, TV:ZZ/&G&A^*%9I]/=+&'2):Y.=;LXO<),K MM%+X$A9&8< [SQ.0ZXTFQ=^]DZ$H; %M2^(C'8A)I*$D-YP*R< MRA(#=-&$$[>=3PG;6N>^MHZ%(; 5=:A(##:CCB6)B5G CDVP?IZ87&0+ M(\A+R/,2]#PIN2AQBY03[&N3^]IZ@14M]J%5Y3FQV(M1"5P\9V '>]<,\Y;$57@;L.6]&5X*X#N.M/ MV7S*"Y"QD<4^=!6@Z[ /70GHNAQ@HSN%SRDIN4RGFT5:HCVVM0><*^Y-8!OZ"L[U MV(:^A'-]SJ^.V,Z7:" S.DB(ZK&I/:!<+PV!;>@K*-<+VSXEE.LAY7*< QW2 M:1-)*)@>V]H#S"4!I K6)>Q%*F%=RB'6.!7F^W1(9IB$HDG8V018EZ28L!>I@G4)>Y%*6)=R MB V*;):67$8<6*B9A)U-@'5)VM$5MG0K6)>P$ZF$=2EG6&>BP[ MOB: NB0L](1]2!6HR]B'7(*Z#!!6.:7G91?I='22!QC[F@'J2I6;L1.Y G49 M.Y%+4)=SAG56^^PI -C8)98V\1G[F@'JDE"W&3N1*U"7L1.Y!'4Y9]@DXN#F M>0&ZA"_2;A0+CVL [DJ5F[$7N0)W&7N12W"7 <>F6CA_0@)DP4DE,V!C!P"[ M)!3N@(T8*F W8".&$M@-.<6&M,C,701D6OG@A+(;L*\#H%T2:#=@)X8*V@W8 MB:&$=D-.L3:K+4#DM)4"PJ8. '19 -V 31@J0#<(SSE+0#?D !LT\[RR )E6 MZ1>CY"'LZ0 XEX7;+6(;Q@K.C=B&L81S(P#8%/&<_X%,$QOANX[8U!%P+DLQ M81?&"LZ-V(6QA'-C#K"I9GB>;](A74J,EJ:$71T!Z4I/;R.V8JP@W8BM&$M( M-X)=W1BRZ@)DQI#4OQ"QL2,@76E+*PHM#%4]#%(30UD70PZQ[-W)@^)C9J N MN"C$E;PH3 K0+DM]#$IH9% UG0Q*:&501;T,"FS;*D-Y>M NL+=2+X,2FAD4 MH%Z6NAF4T,Z@:OH9E-#0H(HZ&E2.M!SS#IA<1=(#5*V$=@8%N)>E?@8E-#2H MFHX&);0TJ**>ADE%9W>.8\YO'2#4I+*?D:N31K]MNW\8>R(/B]ON>=F]3O?H/4$L#!!0 ( M *>.I%"?Z8!B> ( *H) 9 >&PO=V]R:W-H965T-O(J=4.N]568N-FTO9/ ,@CCFMB'AB#:W5G3/C%9%JRB] M-)R2DR%5)? ]+P05*6HW2\W:GF.^):583_?:$E:SZYF8% Y%16M1<%JA]/SQOT$GWT++62\O&G%W6'9VKB>/RA_MD4KXHY$$&W MK/Q=G&2^<6/7.=$SN9;RE;5?:%\0=IV^^F_T1DL%UT[4,XZL%.;7.5Z%9%6O MHJQ4Y+V[%K6YMMV=*.II=H+?$_R! (/_$E!/0&L)04\()@30E6*RV1%)LI2S MUN'=W]L0_1;!YT"E?]2+)FQS3\4CU.HM0U&<@IL6ZC$O'<8?8?Q[Q':.P!.1 MW1P"/6_ &5R<.I;G?I& (T$PL3.1U8^,OS SN\*[2"A@=1=H1!##TVJ70?; M+<+N3 =6T\',- IBNP"V"N#5J856?KB<6@?!XSI#F 23-)90=UXBJY=H'@9^ M(!!;!>+58216?K(<1C(K$_L!Q),PEE!W7J!G[UQO'D?XH*/@@^:'JP.!]J:$ M_G(D/69<+8H0]*8 M[X1?BEHX!R;5=FHVO3-CDBI)[TDEG*N#TS IZ5GJ8:3&O#L]=!/)FOYD!(;C M6?8/4$L#!!0 ( *>.I%#\:5VN3P0 ,5 9 >&PO=V]R:W-H965T M^7[HY>FI<%>+?NVE6BW*2Y.= M"OU2.?4ES]/J^UIGY77I"O=]X?/I<&RZ!6^U.*<'_;=N_CF_5.V3=].R.^6Z MJ$]EX51ZOW2?Q..SDIU C_CWI*_UY-[I0GDMRZ_=PY^[I>MW'NE,;YM.1=I> MWO1&9UFGJ?7COU&I>[/9"4[OW[5_[(-O@WE-:[TILR^G77-*WVFPE")M;$Q&EN M8,,1PO?GF&>."6+LA82!REY>3@.-?:Q 006J5Z!F"H21*80A;"2 1@*@0!I& M!DS88XHQ6PF)P$C8+V$S=T+H3@C<488[ R:8V'E0(@I,=P!,)C(.L3L1="<" M[AAVUA&S0\HLIDW$9H2B((HLA"Y$(8(@QB0 1"4O>!*23)T'<4.*;AH@9"H+80EL",X:0 MP)#9\2-H:DC%H:7G!686 6@C(=.08H9D&$2VW&%Z$9Q?A#0[2'#F"",5FH0\ MPF;O,HDIL3B$"48 ADFD104F!1'=S^P"-[.([^!V!$J4Q0[N>8&:WJ3W$30C M[M!7+/V<'.:P^9<9LP,A=C )GC@[/ @9"0/WC'%D:V_"/$+B?F8ES!#$&8)7 M^0B:?0,DA69,G$D1PBD96"B+,-_0 M;TP/A*F$.)6 &N=4$JHX(C,H,&>$H;)\_R6F$@FH)+&IP*TO4>M;7K;$K2_! M<,"J'($2VV;"LIL />,EF]G>0]47>29*ROQ>-F.(_[H68X'OR45H=343NO9=.4>7^:M"_+ M1KU\-QW+#0U.>QR-'[W;NN?H?4$L#!!0 ( M *>.I%#]F_!A4@( &4' 9 >&PO=V]R:W-H965T^TD3D +F-I.V+Y];<,B8B:] M";8Y,_[.X(R+@8LW63&FO/>VZ>3&KY3JGQ&2QXJU5#[QGG7ZS9F+EBH]%1\'HR0:U#0HP3E!+Z\[?%G9M+[8%OZJF[MA>>/+:ME3\W;&&#QN?^!\++_6E M4F8!;8N>7MA/IG[U>Z%G:,YRJEO6R9IWGF#GC?^)/)<$FP"K>*W9(!=CSU@Y M_ZI*J-G_G>B9WIM5$O?/C*)D.Q[TWNO[,;:[3JZ+80?/#$^+5Z M:@X%>0YU,8]FT=;.OM-NI5Z];2.,"W0SB2;-;M0$"TUPKRC7BCB;)4@#S!0! M2!'8^'"Y R%P@A!,$-H$T9T-XM@8-8G5=%9#<.Z:+0$5"1>J.Y@(A(E6;M(8 MCH_!^!@PXU1\-VKB!6:J/USFF%FKDBC%#V 2$"8!8$(')EG#Y''H'A) I5,E M,$P*PJ0 3.3 I*MM\MPM7PF)R(,CFX$H&8 2.RC9NOQ9X**L11HWA5%R$"5? MH9#,.0F[?+5+$(294[L24,49>7!>=/<&.PH&*I.X+06O_V9YD$3N 89T61AC MMSF@1;\S%] /*BYU)[T#5[IUV@9WYEPQG1,_:7^5OO/F2I!=+PU7_9"-DR;KCQ$JI.<[5Q04T1IA>-++NJX:VJ M1!M(OE^&'_%CB5,;X!"_*GY15^W 6GD6XL5VONZ6(;**>,VWVE(P\SKSDM>U M93(Z_@RDX3BG#;QNO[%_=N:-F6>F>"GJW]5.'Y=A'@8[OF>G6C^)RQ<^&*)A M,+C_QL^\-G"KQ,RQ%;5RSV![4EHT XN1TK#7_EVU[GWIOU ZA,$!\1 0CP$X M^6\ &0*(%Q#URIS53TRSU4**2R#[O]4QNRCP(S')W-I!ESOWS;A59O2\2E"V MB,Z6:,"L>TQ\A8EO$>440?,1$AD!HXH85!&[>'*C8H: @ 3$$20W!(5GH\>D M#M,Z#$E(@8GG!8#1&.4SMT:IK&"?$26$(PFM("EI.!H#O6RP"Z,8M0 M1OT_!.((16A&TDR)PH"D9(8"KB_X'04&PQ4&WU-B!M"UX8(0'U8",(PHGC4% M%QD,51DZ0P$7!TS?D1=X0V-H1T\63#HIJDF14[_:03"29'Y:HJO#S=XVOC-Y MJ%H5/ MMSDEWFNV%T-Q0H@?C\&@N.&.GYGMMFYEIR_Z4[SM:=,,-)AJO4:M_ M4$L#!!0 ( *>.I% 7\NB%1P, !$/ 9 >&PO=V]R:W-H965TVU4E0$.PR2H\J+V-RL]]]QN5NPLRJ*FSZW'SU65 MMW\?:<%JKZ6'M?^ MED\D4@8:\:N@5SYX]U0J+XR]JL&7_=H/542TI#NA*'+YN-",EJ5BDG'\,:1^ M[U,9#M_?V3_IY&4R+SFG&2M_%WMQ6ONI[^WI(3^7XCN[?J8FH=CW3/9?Z866 M$JXBD3YVK.3ZU]N=N6"589&A5/E;]RQJ_;P:_G8@P1R( %O;K\,D&E-KS#P.0T>B*>@F!=P0J^+IR U*PMCE9P'Z M60!^(I@ A; >P^DE10Y)(R"*V-8T!$H\H*ZP8!$EF M5-;TOK+"HD& :@BR72U&KLC"J4X,BPN'P*E*'!2PN#":7EH,ZP9#NK%+:T## MXPAC=VDQK"],@-)B!P6L+QS=D3"L&PSIQKX4#6B8L./DQ+!N,* ;^Y#/# BA MX3Z:N1S!ZL+ I45XL>ZL:4/)1,L'@ M,[^B[5'W7-S;L7,MU&?P8+;OZQZP:A.L^0PMMUUW]I^F:Q:_Y>VQJ+GWPH1L M0G2K<&!,4!EB.),E.,G^M!^4]"#4ZUR^MUV3U@T$:TP#&O1=\.8?4$L#!!0 M ( *>.I%"% <[O!P( $& 9 >&PO=V]R:W-H965T6MI)S*WEK(_("2*&EHB=JR'3IU4C+=$JB6_ M(M%S(*4AM11ASXM12YK.S5.S=^9YRFZ2-AV@;,A&ZN MM=0;*$][Y %5P[43$*1H7Y.L5-2-9.*LI*2][& ML>G,.(PG$9YH=@*>"'@F8/]#0C 1@ID0?$P()T*XB8#&5,S=G(@D>1PQ>8>(UYFC#[->8DPV3 MS!BD?,YFL=4L-@+!0@#[D5T@L H$1B!<.?BTR63$1 ;3&8QG#Q%:0X1_APC_ M(1!9!:+_3S*V"L06!_ZFI",F7B3IQYNR'T>,CY>@R-MM*G^RPO "MK*\MUK> M6RSCC64;)K '2:Q!$HM N EBPVR#H,7;TLWQ&^'7IA/.A4GU3,UCJAB3H/2\ MG:IFK?KQO*!023W=JSD?N]*XD*R?&BZ:NW[^!U!+ P04 " "GCJ10.FKF M+#L" #:!@ &0 'AL+W=O .U_G+D@A&EI^*$9". '"R)410% M08H8J6H_SVQL)_*,GQ6M:M@)3YX9(^+O&BAO5W[H7P,OU:E4)H#RK"$G^ GJ M5[,3>H8&E4/%H)85KST!QY7_'"ZW86 (%O%:02M'8\^DLN?\S4R^'59^8!P! MA4(9":)?%]@ I49)^_C3B_K#FH8X'E_5O]CD=3)[(F'#Z>_JH,J5/_>] QS) MF:H7WGZ%/J'$]_KLO\,%J(8;)WJ-@E-IGUYQEHJS7D5;8>2]>U>U?;>]_I7F M)D0](1H(>NW/"'%/B#\(^%,"[@EX0D!=*K8V6Z)(G@G>>J+[O0TQNRA<8EW] MP@1ML>TW71ZIHY<TPR=[N(G8G&EA^/782)6P [!; 5P#>52B>5ZC"IQ=1=(B$.\225>U2* M<>SVDCB]) XO,[= ZA1('Z_&S"DP.I%!CY&WJ4 , M ',- 9 >&PO=V]R:W-H965T]KHK4V&YU".I3I=)=:U3D M 2-$!D6:E?YRWHX]5LNY/IL\*]5CY=7GHDBKWRN5Z^O"I_[;P%-V.)IF(%C. M3^E!?5/F^^FQLKU@\+++"E76F2Z]2NT7_@.=;5C8&+2('YFZUJ.VUZ3RK/5+ MT_F\6_BD8:1RM36-B]2^+FJM\KSQ9'G\ZIWZ0\S&<-Q^\_ZQ3=XF\YS6:JWS MG]G.'!=^['L[M4_/N7G2UT^J3TCX7I_]%W51N84W3&R,K<[K]NEMS[711>_% M4BG2U^Z=E>W[VGV1;V:X >L-V&!@8]\S"'N#\-V WS7@O0%W#((NE;8VF]2D MRWFEKU[53>\I;581G7%;_6TSV!:[_6;+4]O1RY(+,@\NC:,>L^HP;(2A R*P MWH<0# NQ8L"2RB0 ;3B6G#FR#P A/Z,3*CU$Z,: C M738QG"*1A)&[^A$8YS&9*$Z"LDD F\A9#JL$A&$B3ES2&P1F68\J?<.&$EQY M".3#7>4A<%%$,N:10ZC'C1G1A(7)Q :G$UI( 2.6D D7J-8]4/;O,D-QH:(A MLJ7!"NG0H7)31A" S7"T8^ZLD M;WK,C?1/'!08+B@,:@40VAXSGD$>NG]H#,2$PR48G3P+51W:4WWM;?6Y-,WY M;30ZW!P>6'-R=<97=+;NSO_O;KKKR->T.F1E[3UK8\_%[>EUK[51EB/Y8 MU MM#>@H9.KO6F:D6U7W36@ZQA]ZJ\XP7#/6OX!4$L#!!0 ( *>.I%#G(=4: M$0, .T, 9 >&PO=V]R:W-H965T7?@G8N7OOWH47 M'_.+:%[DD7/EO99%)1?^4:EZ%@1R>^1E)N]$S2O]S5XT9:;TLCD$LFYXMK-) M91'@,&1!F>65OYS;O8=F.105?V@\>2K+K/F[XH6X+'SDOVT\YH>C,AO! MR5Q47L/W"_\>S38X,0DVXBGG%SFX]XR49R%> MS.+;;N&'IB)>\*TR$)F^G/F:%X5!TG7\Z4#]GM,D#N_?T+]8\5K,I_X[/_-"AYM*-,=6%-)^>MN35*+L4'0I M9?;:7O/*7B\=_EL:G("[!-PG8/IA0M0E1'T"(A\FD"Z!O"T/V^=F:<(S8CN_M9LVF;;[W1[I-X]+PF-Y\'9 '4QJS8&#V+0=<3& MC2 TZ6,"74%?!H;*6&$' %]3K-T(%(:C,MP80E.XC CL1F0!HB$ "V$ @(0 M"T"N $;-6K4QU,94K582(IB%@BP48,$P ,!V.TZ8Q @!BJ(1CIC1R<+XXA- M*$U G@3@(2.>Q.TG"UDTH2<%>5* AXYX4H':(#:@ MHN.'??V?H.MB)LR/@&(<]R.7ATP2@?:^1Q@@2L9$4-"$?1'L7Q3=X+\NZ#8# M(MCG"#!Z/-43V,2(WFY"!-L8,: *1RYSY49)RB:88+\CP/#QQ%\.@JV,DD_H MA5V* )NZ>EV?HCB-!G\;U^<1[%,,^#2.)B!@=V%TNV ,^P8#EG $=T%#P0DA MB$XPP<[!@'/BJ9;!GL#D$WIA3V#@9'/U4DF%/8.A\&YVC&^P><.!!&@QFOI(W!SM/2V\K3I4R4]%@MY_9[[&9&4?[*S1; MMY/W.TS[(O C:PYY);UGH?1$:N?&O1"*ZS+#.UW@4;][](N"[Y6YC?5]TP[@ M[4*)NGNY"/HWG.4_4$L#!!0 ( *>.I%#O0:MH#@( /<% 9 >&PO M=V]R:W-H965T%=>+EC B9'?32'KU(U=IX 2]T2^L.$+3'ZVKC.9_P97( JN*U$: M.2/"?)V\%Y+1B4650O';.#:M&8>)_Y9F3_"G!'].4-K_2PBFA. ](33FQ\J, MU4]8XBSA;'#X>%D=UO_$YA"HP\QUT)R=V5-NA8I>LS#:)>BJB2;,<<3X"\QF M1B#%/DOX-HFC?Y?N?Q0XW2,VGF>7"*PN D,0+"7\!S6&5H+0$(0?CB%:'8,- M$]M%ME:1K85@OQ*Q8&)O=5PVS .W.VLA.PO!^DYLF =W$EE%(@M!L')[CPGV M>[M(;!6)+2+A2N0>$^S7]X86[X4"KTQK$4[.^E;J/W,1G;O7LZ_?VRI^5%UM M;$+O-&-+_(YYU;3"N3"I7K-Y&ULC99=;YLP%(;_"N*^!?--E41:TH\@;5+5:MNU MDS@)*F &3M+]^]G&3<$^=-P$[#SOZW.,?>S9A39O[9$09KV71=7.[2-C]9WC MM-LC*7%[2VM2\7_VM"DQX\WFX+1U0_!.BLK"\5PWF\6,GEB1 M5^2YL=I36>+F[Y(4]#*WD?W1\9(?CDQT.(M9C0_DE;"?]7/#6\[599>7I&IS M6ED-V<_M;^@N0[X02.)73BYM[]T2J6PH?1.-;#>W71$1*R(D4A MG'@S :W9$6+W_F.'>=V8EL[LL>G@KW0RYJHA$+; M4ME_)V=2<%Q$PL?8TJ*5O];VU#):*A<>2HG?NV=>R>=%^7_(8(&G!-Y5@((O M!;X2^%,%@1($4P6A$H2? O]+0:0$T=018B6(IPH2)4BF"E(E2#6!TWT_N2#N M,<.+64,O5M.MZ1J+K8/N4K[DMJ)3KC#Y'U\3+>\]+X(DG#EG8:289<=X/0:% M&K."F&C(W$-,/&0>("89,H\0DPZ9)X")W"&S-AEO2&2 B_OIXO"9O4ZO!TZO M)PW\_A">#QOXH($O#8)!'EJ4RXY!KH0J";FWKC;[JTG4_23J81+U.(EZFD2M M.RKY$LK^ PVF.P"G.S"^5Y",&(2@06A^+Z3GTC%1+\P;/_:UG9"9%$J#&(XE M F.)@&1&#&+0(#:2"1)M,ZX[)NR%R0N(3F4F%;IQ/+*5$C"8! A&V_598@R3 MP$.DX!"I.42J%8TL-?-%(WF(-0V57!<8!NFUR9TTKP 6(I2,9(U&S@!D+I34 M&[& ZQSR@)Q\/2?/V)\W?(,:.9D8IX*1>."RBM=:&,GYXRR-V3RDCW-&]Y=_KR.^FUT9!]DR\QOR]Z2YH78/1 M6ET^G>L->/$/4$L#!!0 ( *>.I%#$_7UZYP$ /H$ 9 >&PO=V]R M:W-H965TW;@\J':F-I.Z/[];$,9;?S0%^Q[?>XYYQK;V2CDLVH!-'KEK%#H2H ML@5.U9T8H#X+?$4]>TVB9(D0VT@9^@?PTG:2*RL%0=AUYUHD<2ZAS?;P[' MU.(=X'<'HUK-D>WD+,2S#;Y5.0ZL(6!0:LM S7"%!V#,$AD;+S,G7B1MX7K^ MQO[H>C>]G*F"!\'^=)5NE!9\9C%6.'V=QJYWXSBM),E66RUR+:QQFY6J(9MPZ@N@=PP?4>0^@EB+T'L<9!^V*4)$SM,[S![OT3B ME4AN)9+03[#S$NP^WV3J)4@_T61ZT^0V"#Z(D-79XR ;=^L4*L6E=S=^E5TN M]GWHSNY_^/0J_*"RZ7J%SD*;&^#.:2V$!F,EN#,N6O,0+0MOISLSE=!VG M0(MA?FG(\MP5_P!02P,$% @ IXZD4)9!8N'> @ T H !D !X;"]W M;W)K&ULC59M;YLP$/XKB!\0.&->$B61FD33)FU2 MU6G;9S=Q$E3 ##M)]^]G&TH)/JI^";;SW//B-O*!__MX"D_G94Y"-;+FIWX3ZY^U8^-W@4]RR$O M>25S47D-/Z[\!UCL2&@,+.)WSF]RL/9,*,]"O)C-M\/*#XU'O.![92B8?ESY MEA>%8=)^_.U(_5[3& [7;^Q?;/ ZF&("Y /3S MKPQ>Z8"4.H3CC+BU#DE*G5<&@44DG;HBO"6 VQ-T7QD[E#A*A$Y5*^!= 9"V M %,4>,5#]OGTXR4/<\0),HYV[D2;A&F43'W^\.9 W.;@)I:X58\D-AA\UDO> MG.S()+V]N%3*?!P'I_U8]D#,6# ZW\!BVPY7[S3MK/>#-:>\DMZS4'KHL*/! M40C%M9/A3+MWUN-EORGX49EEJM=-.V.U&R7J;GX,^B%V_1]02P,$% @ MIXZD4 JXEJ"+ @ A @ !D !X;"]W;W)K&UL M?5;;CILP$/T5Q &$M;=2;$^,UD6K+SYYH M.25'0ZHK#_M^[-6D;-P\,V<[GF?L*JNRH3ONB&M=$_YW0RMV7[G(?1R\EN>+ MU =>GK7D3']2^:O=<;7S!I5C6=-&E*QQ.#VMW#5:%BC0!(-X*^E=C-:.#F7/ MV+O>?#NN7%][1"MZD%J"J,>-;FE5:27EQY]>U!UL:N)X_5#_8H)7P>R)H%M6 M_2Z/\K)R%ZYSI"=RK>0KNW^E?4"1Z_31?ZKTED;S#\+/92..I% KM Q2M@$ -8# M 9 >&PO=V]R:W-H965THFJ(O2. MNBK4Q?)>PE$GYB($TW^>@*NQ1!FZ-5[[R/X:A=A6>5IA<@ M3:]DHJ$MT:=L?Z >'P _>QC-8I[X)">EWGSQI2E1Z@T!A]IZ!>:&*QR TA.7\YOZ2\CNLIR8@8/BO_K&=B7:H:2!EEVX?57C9XAYAG&,^C?:.H%$ ID)V>:_!!H)](Z M)VM^5CC25BD+3C)]<->HI'K51R%, M]%97C5[%1V/:^R31VZ.HN;Z3K6CL/WNI:FYL5QT2W2K!=SZHKA*"4);4O&SB M]=*//:OU4IY,53;B647Z5-=<_7D0E;RL8AR_#WPK#T?C!I+ULN4'\5V8'^VS MLKUD8-F5M6AT*9M(B?TJ_H#OG_#"!7C$SU)<]%4[I'QUG<^[58Q<1J(2 M6^,HN/V?SN2>-!TP5>M]_9/WKSULP+UV(CJU_ESAQ7<1%'.['G MI\I\DY=/HC?$XJAW_T6<167A+A.KL965]K_1]J2-K'L6FTK-W[IOV?COI>=_ M#X,#2!] A@!,_QF0]@'IK0&T#Z"W!K ^@$T"DLZ[G\Q';OAZJ>0E4MU^:+G; M=OB>V>7:ND&_.OX_.Y_:CI[7C+!E:APY 1)AMC-B&&C!&/(0(C-,8\ M 4K% $FLD<$- =T0'Y^.,LUA@A0D2#T!'24Y,;+I,)G'-!Z3TY30=.(WA&49 M9G-^*)@.#=)AI)BD0P,=FA=X,K./(8H1FB$X&08FPX!D%C!!!A)DMZ].#A+D M80;IQ.A#'AC%.4(S1@M0I@!D\&360PR]JHF1R (460 BTYT&85)8!".XO!% M0:>UB\*MRN:F#,^<(Q@0"@Z2#L2NA BALTIPC6,"* 7'$0F4YAW!1P$.SP*6 MYE.=-'0T+P07.0:J/)TY)C!(R6F3!Q"17M[)[B'WEZE V.GJ1 MQE[P_AK>2VF$Y41W=DF/]NTW="JQ-ZZ9V[;J'D!=Q\BV?]PEPPMS_1=02P,$ M% @ IXZD4"O9Z38'! .A0 !D !X;"]W;W)K&ULE5CMKILX%'P5Q ,4?(P-7"61;E)5N]*N=-75MK^YB?.A DZ!W+1O M7_/1-+''%?T3P)ES/,<>QL:+JVZ^M$>ENN!;5=;M,CQVW?DIBMKM455%^TZ? M56W^V>NF*CKSV!RB]MRH8C<$565$<2RCJCC5X6HQM+TTJX6^=.6I5B]-T%ZJ MJFB^KU6IK\N0A3\;/IX.QZYOB%:+])UT*C] M,GQF3QN>]0$#XM-)7=N[^Z OY57K+_W#W[ME&/>,5*FV79^B,)@&6?K7/2B8$_<#.:V;QS&;OC/5-N: MUK>52&@1O?6))LQZQ- =AMT0DRA!.WEF-$.W""3(YH- /C+8=AB?H=T)]%!W)C.'C@NCF.6^.<,QU/"X\MLZP23'Y!QK&]L)"/./#L<]PUV=['4_*DP&[%D_D*YMAC^)SO-^ZZ!XO-BFSO(Q".R?NY?*2$?8;/ M^89#()G:?!#()QGL,WS.=QQW]T^2DZ-@%T4\]6QK./8L/N=+#H%D;K,!H-3> M D1W)RZ5:@[#X50;;/6E[OJ3C;O6VP'8,_4G-E;[FCUMQI.<7VG&4[5_B^9P MJMO@57>=KH93F[W6G3(% MJQ]02P,$% @ IXZD4+YV!Y(A @ ;P8 !D !X;"]W;W)K&ULC57;CML@$/T5RQ^P^!I[(\?2)E'52JT4;=7VF3CCBQ:, M"R3>_GT!>QW'0=&^!!C..9P9S"3K&7\3-8!TWBEIQ<:MI>S6"(FB!HK%$^N@ M53LEXQ1+M>05$AT'?#(D2E#@>2M$<=.Z>69B!YYG["Q)T\*!.^),*>;_MD!8 MOW%]]R/PVE2UU &49QVNX"?(7]V!JQ6:5$X-A58TK'4XE!OWQ5_O4XTW@-\- M]&(V=W0F1\;>].+;:>-ZVA 0**16P&JXP X(T4+*QM]1TYV.U,3Y_$/]B\E= MY7+$ G:,_&E.LMZXJ>N_#V+1F[(>=9#72[(1@) 0309W]B!".A/!*B!X2HI$070G&$AI2 M,;798XGSC+/>X1QXF?HHH5&S'; !#/, M K&_1\1),&&0X7O>PL8])D[M+D)K,4+##V_2".T" MD54@,@+17"!Z7E33ADD7R3[&W!B)K4;B>X$DL@NLK *KSY\J,[3B'YA732N<(Y.J*9BG6S(F05GTGM2UUZK[3PL"I=33 M1,WYT .'A63=V-[1]!^3_P=02P,$% @ IXZD4(T/RPXZ @ ^@< !D M !X;"]W;W)K&ULC97MDMH@%(9O)9,+D'P;'0DH85&YV43UO=!L M0DX<%Q5ZH0X[E26D?V<(DV;J^NZEX[4XYEQV@&Q2PR-Z0_QG_4)%"W0N^Z)$ M%2M(Y5!TF+K?_/$FD;P"?A6H85=U1V:R)>1=-M;[J>O)@!!&.RX=H"C.:(XP MED8BC#_:T^VFE,+K^L5]J7(7N6PA0W."?Q=[GD_=U'7VZ !/F+^29H5T/K'K MZ.2_HS/" I>1B#EV!#/U=78GQDFI740H)?QHRZ)29=..1(F6F06!%@2=P \? M"D(M"#\%T4-!I 61K2#6@MA6D&A!8IO#4 N&MC.D6I#:"D9:,+(5^-YEY[P; M"6BW7)VA!>0PFU#2.+3]"VHH?S9_[,MCNI.]ZE2J07&.F.@]9W'J3\>.XSRQ,3-)GGDS,L,\L34S:9YY-S*C/K Q,!.8]")1#V%O?P.P0FAU"Y1#U,KF)<]XR\L (J%*0-_!NUG]A M13U944LKZMF*6EE1ZY9*'T*;+Z#>>D?F]8[NUCL(_^,0FQUB^SU/S [)UWL^ M2VQ2!5>7A7P5?T!Z+"KF; D7-X^Z' Z$<"0,O8&(.Q.I%"9<])2,5H %&& 0 4 >&PO M M\_"7NFZBCYMU4?_[G^Z:9OO-UU_7R[MLD]:]I/FQ9^B79'_8Y>=E[NB^?<_C6?#/_WU+W7^U[\T?WU> M+G>;K&BBM%A%%T63-P_19<%]YF41G4;U75IE]5^^;O[ZEZ_Q&_YN&+TJB^:N MAF]6VM$PB:-!?]!W7YYMX>5@&GYY8#Z=S:\?MIG[,NF?_KWS@[_O MTJK)JO5#]"[;EE7C-FRJG=>A':U*BSJG#0I_?9.NZ^[/WV957N+R5M'SM/': MZ=W[G__C?X2V2.W*BWR=1:]WFT56N2WZ_>1T.$I&XXY/WV6W>=W &IKH=;KQ MQG];Y9NRRNOH*JL^Y,NLCL[+"E89/ %S1DO;)HZN&EA75%81@5SU /^N_/VX MZ.CL.OT87:Y@I_*;?,EP&%[HH'\ZFHZ&\V32T=/9:@7 6\?ZC^AE7F31F\*; MRV#8[T>O>["KV7H%TZ_@"L$R=GF3_=O_2B;]9\F\WW429I!S_ 6+OB[O?4A- MU^O4NT9N#V;?WE;EA[Q8>O.\_G\.=?&VK)MT'?V_^3:XZ=/QH)^X#VGB9X [ M@I\,DI'[Z&6YA#'>WI5%%PQ.1_W3\:1SS\YW5857@:]/7MS2TG?>!OVGCWH, MQ,'U39=-_B'#6Y3J+O=<%P!'V-[;LGKPUI-6MUETMEQFT K:K+A]1U]7&SC, MZ-M=#GD3)8.3 MQ5.XELM=!1]YIUAN-G!5KIIR^;/7196N:)OW&=ZE.CBX_(N M+6![0KCB]=G5\S,/R^I#%A,"V"9"$KW9-0"@!WJ:#$Z'WETP6%KV\0(>>@>]EWZI MKQ6J#W[_=V_L,_ATQ9^O4V][SM^\OGKS\O+YV?7%\^C;LY=GK\\OHJN_75Q< M7P&=?G_U/#IY\C1Z$N5%='U7[FK89&_,Y]E24^9DWK5[:5UG3?V-]SJM[X@N M+_&/[!^[_$.ZAO;>('"/$.W7494M,VBT6&=Q5&3>U3PO\:"7>D"?#F7;-%]% MV4?@=&H '1R[;.[@'B];,_6 O40,N+\-(-AM5@&T8:>XEBWN>W":;[:($_#V MK+.TSCHZ?)[=9##@*FJ >H6; ,J"BY3#=J@&P>&^*\O5?;[V+ND;6OFZ+&Y/ M ?-M]JX]_$Z?[SI/%_D:^)?,/V1S=MOT 0^N\\Q$)X$^@'M:[6OR//^0 X5? M=8^CYDKD 9 (8#^[]%6V\+:M?>A[AG[9ZH:. 'M?M@?T$%U9Z!:E P]BK&-[ M:P'+GKFZ9[ZG*:]_3P/$QGF#4,XW:0DG"8O(BB4TCDZN,L#P)7 ?R>2I\RD* M(-_4VW29_?N?0,*H@2W,_O37R*,8B.?ORO4JJ^H_TYWJI%$U-CU]TD-,#A!0 M18!)=MFS:-Z/X1'^I^2.*-TU=\",_C-;/8M&LW@P'L7CZ9@6 #\GDW&<#&=1 M7M<(<(0@+'V)TB8"9GIY9V01:@$X,$.6Q>#!&!!5O 7I?I-H?==EN^RQJ0MF >0#(*&#]T,7:;W9H8#(7(@.)7V1W@-^1C3M9E M73\%! Z/?5(+$(B7KURO<6TY\C]9W7$/ZB/.PH,8VIUCOMQ'B4[>I@CY=UD# MO/OZ*5"F)]'7'5*DA(;8PD%T GN\@G6F%> 'V"7ZVH5*YVL/7HYJSH!S5-.R MFW%I[GGIDZT599?EM <,H9E5=I5NXD,=U&:3%E^J2=4S.O%:= MN.]/7HK['"VR&Y@E[N&'O$::!C_U.Z #_MZ\/;KE:Z Z>Y''2Q1^D3:I7M*F MJ?+%KD'2&S5E5(21R^&!O)ZT]F /Q6>\1S<,+\.1UUUMIL:MMJ4'#-^F=;X\ MLM?G^7J'Z/BXUC\"D-UA\_0#@"V F5Q'"T7LF10WWCN3CB9[[CK<]+?O+OYV M\?KJ\H>+Z.3EFZNKIS[RV8]G/JW[\/7:0]@,DP2@W'F1F8%:/D2HIZK7K 5* M5S_M:F9A BC[6$*ZI^G1T+QGJZZNWYS_Q]_>O'Q^\>[JS]'%W]]?7O_GT4<@ MF(VWBMDX/\!L7!S!;/"9M!=^J1 @7:L LQ&="X1PN8_;\$%]G19+W,Q(RIN> MM*[;"8@_^ W,NB*N^P2:T5]X=E&;][P@KB5Z!Y,'T;NZ3RN/Q!\+9Q)8O;D M\T +@-<* P#(9)OMNGS(F)WZ&A#W*@,[! 65N?OEP%6V!.3K M\V("F/;R01W =-0W#M =V_?>;]YEVQV('@BJ>+PAI5R@R;XC#N^$KX,ZO!/^ M-X_%9X_A\E]DBUXT&(0'?K-LNO?P;'?;B_J#\,M7Z4/4'X;?\9"3\,O7Y0?3 MJZ]!?-Q&!'5D*WVK-$P?*]#LH;]G5W^+7KQ\\^/QJCZ:RLVZO*^CFZK<"+4% M:)X!%5KF"M6BJ"!P M5U"I<+I(<0#D*8!X\8<=+/=W*4X# #]EE?DVJ.=SOWI? "E9H]08X1JQ \T" M1V@/B.K[=!MF= #1G=(>Y$VV\0^!I!$2]U@G1_,X2@%GE:<='-9>_698:>F. M'A1Z7A]SJH>@+2\^P.8=@(2W OT==U @$BVS;*4&>=PA>^L*S?'0NF[R I#K M@75]6U95>4]2RJX E@2%ZG+]@4X##9"H( 2TX$O2;],'OGL @$=_T]J27/ 4 M^Q6F0'UXM,--NX=8"DU)I*G92JTZ%=VB,;,@3< 6J--^2B@[W:??J[/KRS>O@X&3.85U&6)QP6UF-A^'#J^QFA\?/Z-'G%U]F M!($*WY4+)27E0C>$?1?9O:O(][9\WZ)?OWE-Z[Y\_7 MK\]>G].O\^O+'RZO+R^N#K.\="A%V<#.-T&P?ITVNXJN1I?1F37W__:_9H-D M\,QO'N&;_O!9]*:Z30LM)I"ZG/>@++@-?&W:_IA%=RE<6+S$1J6^!/8 #@51 M&@M+]5V^K:/[O+F+-NE/L+,@ @!Q>4"E.EPMT@MN,Q $T&T)F47X6=YG51QM M\A7(#%FZB1EO%P##65;1*&0()P+%.FF\;"M 6)7B31!446!#^PI-HX?35=!34F3)0#+,;W*\\QK-J*7 (!I?500?A(+8S$57:DOK[$5G4;U; MX$XT.1H#K&6J-5Y:91:_<,>OTAK@7?O31&>W59;Q.DYPLP?]9Z^NSNBOY-G3 M.+J_RY=WU(]2J*X?(I#DF_P4KV:4FL][P/T!)LK0R0O'"4V%NT#IC9"W7EA- MMP"M'NAD@X_A+'9+7A%>/?0B4>(PK.8G0'\PG -[#LW7C]\PQ![*!>6&Y". MUBE(WEFLS#*H$U*-H[LL7?V#/;!XENMR29T )MKCBA.A%TX*#T .JDM$9('9=YCFM7_AONJ_O,?0*[X3[:Z1YQ^]4SD+/UPPHMA@3, M.-!"W>M8WE_<9CMU0*\ ,K5&ZFIJU CE^_L[$$<>3LM[1(X(UODJ3RNX'-&%7V2W#:V6?U>K9-]3_6[[3E\5JAXH 902X$'=:@SJUU,"N>XFYDWR; M$;.#W[Y'D+Z%J0?CS]XTT9+4T$KH#TR3< SGV;8#!T>@QV(ELY?># MG]&. YY?Z\>]R-I7IXQIDV?ZF(,[K4\!;SB0B;JVSG#62D.#W0K3#-]J[D,= M%NX]<%?;$ETHEFF!=ZS)-QD>)O :/@>@"&6N_8%FP?&WT;4UX8DC1L@ 1JO.CU M#K$O3#)=$B73SXU@P0_:WUI>PKBK )AGL%6KS%ZI[VD;?H ^=JCM^\I*F0I[ MGJ?5NEZD*[Y/J()EM(S:/][##_RQ 4;]A4L^-#E5BS0('G]'MVE]>I/C.Z+% MFDB0J4FO6J-DU*X"H@0L\4AL 1,&Y:/0"36P!' <@-_E:=?@"412!A]C%C'S*] M.S]<7MB-:8A8MM&BWN_VYN+0+9* 4C#<@!!E8"*L:&1T#\L67,+Z@7B9-2P/ M-X3(8MO[8&8Q!E!+=,JENX5>8P!)N;(5FZ]0AV;AZ8693RZ%<\W0V:P%&N M@%T[*XH=C,&8&1&C[NT_^+QS-ZMU0=?I!HQE[1(1">X'SDK+DC3#E\@O4>%$&$ZV_8IR#F ;VN\,AHJ;M*\ MTH!@Z$ES:$D6YLZU!("J07+59&%B"U?@(]S4)@.@'_=[R5?LI3.'O]H>-C&- M2-XGFH[AM7$X53R1IMQ&35986M'#9P'#0N\&>WZXY1@7]/41X 1%< 2/7Z_J"] MKMOV3H$G:PGQN-]690%_+[.@790NWE#=CT,?"]8/&\*6I"N0?G"C["?;\"< MY-_O8.&P"1,&ZA=G5]]JSZRSJ_?TYC09&H[7(J]+HDW4GYKI.:FZ(K1-HG/: M-=R=930<3)Y^$[T"61WPF=9WJEKAM)HXYXK?5;DG$D2@V$496L+$* M>),U=^6J7)>W]NILQ- (%:@>ORUR?8G$YSP50BCV.FFG3\N4P.4!<37U5;Z* MJAR<&R UM2R(')*0O=N M:S@N=%Q9IL0%<CI?7=V]I:W =>7KNM2^ QEDKP M6<'%6@.OPDP+V&/8VE5=8SHF2^B_@1&&*]P^U;">1-P#I]!I@ L/%& MR;VA,U,B"3,@N,NU@JFR-DI$L53%69&*!3M: YMS\X!3W&V1"C*GE9%2$E6J MV-<-.YRCAJ 6^L#T!C&-81^2L79Y9.Z5,3[S&ZS%H<7CM&2',1-)^%/C!-(+ M(,O6$(E#A8!"%;A(U*Z1R@B. @'Q^Q2H*= @@YIYB7",K/@B/5,:X1:2[)C# MF2V)["(5D+N+O9O#HX4#*@)6!7:"(5?=I9Y$3&>[6\##BMOJ0$TSB9JB%T@D M?R!G1(EO%"*"C@$1/;")"6NBY;O&((9=^+T.T;R,+%V M<>U$Q%J!J,]!K%]PCWCTH1UX7?;H[6DR,+N@/$2N4?^JESX=X=*OX(#6"B2Q M-T%1<$WR0P?SPO+*#RB(*FDM^[C,6+^F-TL[$0+;#V@36&=VEM2CL\40D0%? M"RWNIQO2J68?%6=TNP.&$6$$NH795C!JI!@G0M];6,!2L3;$+N(NP#^??JL, M7!][JWK0 \B*A'N4Z)WJ")#87C.4MH%UI1DS7F<\ B1,\U0QHEO6;CK/40:W MOY$TY'5/Z^\4I@7HRM#QEN57PNDE;A+>1-X.XM9Y0KJ%]DVD5PX$=7(O86 / M,RTC=9>@&&]60NH_<#<'G"M75J)O #\D/.4;, U@EK^\0 MR( M5;?<(6OV"X14)%N*TBEBI6%])89-%ZA\%%\*W@)5S7)1L/,4W->:'(_# M,-IF,!Q%H'3P)E*&)U]EIVK E:;H0.M9 2O&0,-02K?6:))8--4\,5J_@^/_ MDE%1FJ">K4RCX%;@-(4F8O%A;=5%9-E[B20_2N!0MKN&-+_1/W:D$@;<@NS+ M"0AI)"QE*_(B4^&$F[3Z.5/H.:SX<,XFAG@2.IQ7.A1A83$QKG#732^N6 MRU9*9!9/0=!I=DK] 7HM[>=- MB?2>$ _-50E2L"_8 \&G8@P$#-WE !T@F#U$:]R!6ATDH4C--+?P1EN]_?V?@?LMWT%@FR:GEF/Y@L\[XHKY2%]7T80%:/WHOH=SMB7@5<\'/^,PM MCJ$;T_'S1"&7I_JO@?EK^%1WQ1J_-@A\_M/MMNOK%D^B^3 >34?PA]:4V;], M-SH>K&$^::4UPJ%QY8>'GL^',_/W2QEM]$5VY]+SXQ+;XD[Y290D\2@9[6GR MK_9O"Q0]U//;0&,""'P?$+[- C(7(2CT;#(P"2$:A4WAKM%\F&:Y1\ MC)F>2:D2B(B[#P5MITXT,!^L-K3Y8;ZDPR I)S0+Z\T@]*Z27AK%%[#)$>K@$*07JO):&P!,Q&X%LE!.I@_% ML##3A;1B7:;*>IAO$)A 3Y\,NCU(QAZ35E6EO:*[+9*+%SL'C*433+V:S2= M*T,L2\28[:)1&D:E6UFU&'!FIY9=5U"-1>Z7J(\B]7U;E_ZDWYOKF9*\:5@D MAU$[-!9Z.MPJ^P2'Z. XP/1IC0)*50RDU/..#'A+=B13WI1&)4?;I#>'Q%AO M6Y"C4QPFSY#WZ1$SQLU@!1:SX,U]&;68;>;%XT.*1*M<9:X;[4;[IZYUC/90 M]>8PKCE)^5]F8^4-8?<5HEA.JH2FB3D/)%NA1"P"M-H$L M;LK B\ -4[FYR>B*A:7>7O2E=J)4:J/C#Z@M M7?A^WBB[=##TGP:,QDT>[C=(1"Y,DC2"S>%?0+S$V5HW+7)?\P&RSB*ELD') MBTWD.=P[\K[[9V8<$^!1 /*$SEL-A,9.Q)Z'I4W97]HH9UT81LFL]#5,K18N M+W,F6L+CY;E=JK#2!/5 8T7P5-RR.;P?K6^;,=7M]>-K'K99:^TW^<=L=4I" M-KH YHW^&]UC-%8GA72L?"C(/IQO%KNJ9E%TO0/*D(GS.N EJ">:UWS:OEN> M$3'%[")2<^OYL?A=&TL*TK,/"$(T:Q##44,%[[7C 1J^E^FN=B[&#N1-=J*\ MX2NFK/[Z0AG3Y0ELG'*H8_A/"P8D?4N,VH+]8HP="#I:\>FL^:BQ9[)R6@2E M7&D:/5O<*VBF>X;;=8NJKZ?*\.L>S-'G$LNM%SMG;PYY?*F%D;HIELR"RGKB MK#"ME=IP9;6\F;!U2[@XIT]A;>R3+(Z\[>F)O%HM$"\IMRL306\X.*6)TW-I M.6AT-1+NE2.L?A-7FOG,H9YTDB9$?9L MF ##M+:N$'=907I[='%U";WH 8;%4*@:55KLGY<9BF!USQ*2C)^?YA-6V9+S M"\"L%02@=:\0\ N(TC9_45<7UK7O? \$2O@X6MJ348.8DD<-T;E MP(B;4JT8S&$N<(D*!>K,B)&3N6*'F&O1DU1&Q+V 2B[ BK'RX(+I.D7O(>@@ M;-0".,B#BFZGV@JTRBFM(EO)R6V%[H#JWMB2S9;!2A4;@S;U6'>IP:47_:V\ MATVI *6P#-0*#B,UJV>/^P-XSUGSD1R29:(ANS7[/)=!PWP&LEG&2 MVFZR$*\)NW *D4@18%09HQ3&4BC>A37@^R)E_R$Z]P5Y^SGL/9)<_YEHZ MQZ5]^]@!D1TOE =Y:0?O'#5G6+,> 4BHB#:AK1O3 QH&TNJRNW"@5>CX:K.8 M 61% N(L6K#J(3\))KD/7["O+PQSH4F*SE>7IB^PC M^B?OK);7,1M;$=Y";%Y@%)QR-5$\#'I]$O.2+>\HL6W=.@YF,7P0U:R"NA6! MT6+_J]CA51Q6A3 I9QX+\SY(N37 ^UI(0,9G=0M$?L_1X=6("G!UR';W2& MKKQ:[C8(74OMNKUN%)YR(=^Z)%O;K<*H:5V7&&ZKF!0DGB!6Y3B52D)ZB#/3 MSJF[VJ(PB;1U1@^<')!W*?8*@7%+SE9L]HDC3&"\VG'&(#I5X&R-\ E7OJS0 M!WLA3D5S>W4[P+,7V709Z%4(\(5(8FT\=S1?>I^EB')AFNL*-40"7[W(/HLL%(G)3 !?4&=*P5K.Y#7NW8ZS[E0$1%P8@U)N6=]C\V M&-K"J#A"4OSE&^4XJL]1>+&1SSVC+/*2(&$$R"U@*@7B!D"8;=5N!^XUJ15+ MP9[/N4K:@4;V-49B/6@@4-W0$6 O[*[ Z]+"G&4W:AO+@SN8K?"3I8[0C4,K M$JR%UJ/0G@MC@A)XVI?=;S"B6*>D#&J%&Y8I_FF?@H@"0A0N4:OTDUZBR(NH$P0 MJ*TR(FYAZD59 (BQ)*QB=V1?2!/#IX\U6"A]]C'A**Y5]A6'*Q9I, M5#2*"J];2-,'!D'?_6CF<:0NTA3S^W#!=02Y% M0/<]YN0"' ;H/DK7"SBXF5&$ZXPW9/Q5B,'>G9V5&)ZB[U&Z /Y<\VQA91Z M!_?6 KXGM QYO5RGFW=RK3D@1?#N;^(W[MA'SRD_9%;R!+.JN48]H M9&%42->U=K1%4$>EQC+?4K<2I-@GJ^T#?V*]3ZW+J?(;(6=2=+I@97=M?4\? M+..'J]F1;J!!_RR4_847>OBF*(4CZU0L ;*2J X/5(% E9:4E-_-CW;+T8.? M,']FA!=U_Q@6.^XJ,C(,O#; B4 +SYM"-]EI "X:(,%RJX4??6O,\'S#CQT, MC0E9]C-A4 (O_D58F+PCU9[8F%=H2)==^5'H-Z>* !VW>ZL,;X#MS'9CG%>Q M.P)JV$\!/JG-=.5H5U![3&LRGB1%:8->M;7&! 2<\SXQ>U3S;AD:2MDYPBNS M@5X5Y0S1*U#,@F(+M-[&9:(Z#J05 :4NW#[**(6-VJAZ&@H0X! J%5?$GZ)N M0&A\+I6+.47K%N0JM&=>>,J^3&OTC5(,C3TY%5MXRAL9WV4<+]NR4V8R)Z3A MN6EC4H#SUG'#6AG(F3Z8.=#.0QURG*$@I%% 2*QC1_.'JB*9ZHNE'\;5Y($F M<#A,=7EWNMMJ/S38^!K5_\N4"*G5ZTNUB7,$R%L8G!^AV+-6?J1"GD!4C!&+C]#4B5L29[=TUFP\WFK MC;GF=A!F@:OU Z$S(4^*$"8T(IE;H<244JI$Q?H#I\"">(]#A)DZ\*/8_40[ MDM^(Y^:HK^%Q9?+3KKX2&%KVL6OR U8YH=T2S M/29Z[(AXIP"G04B_2TPWZD.6?>"@4:HV;LMP09X,>Q-KQ;V\06*,D@SIX5TQ MU*ZT!56H45LJ2U*+@="9EBQBB/4I_63#0OPCNMFMUZW(7B5:X>R!?V@I]SDT MV-&8.V<9T,6FA;94&2<'%6K,3L_T,GFF<4S=POGJRU"F=/V=PGGG)L3Q7(8X MZ@1N5UC(Q]'AA0[96']X_\)3)C6UAJZZ9+Q/_O9N^'A+7\G*GCKZ9U:5/H + MI.2Z.AJ5E.,7,!_U1AJD%%=@N*PPXG3I:7I[BT$^38!F& >4CJXH)%M# R8U M8O%YD2$<%=EMV>0REX4*K02T6;'F2>==Z$5G[57-^O:B2#-;8 ZX)PO4](35 M__M)3Z0R5SB;W?(Y048<[WL+_3 RMSHRFI\*FS'8WVJIE$(E!Y;&ZY 3,*A2?AFH).?(8J/".VHF, +$N&1H6VTN)C@&^XY[& M1=HM6Q:'\(X3W;]9:YJ($37D,X..SLXD.4M<*VJ6]'5H+B ]A%H!H4N\MMG' M%&E[S)Q;&C)5J@W$0!A,L47[0(HIZQ2B]<>+W8K![$& [EH+]8 M&>AP-^Q8@1PW]X .'N3'A,HSXF=4[A[5*XE3F.R?K9HH"Y.!#..:%4-*Z28$ M*Z*)!S,V+<+#VX7<35N98A52M$I0SF1I?Y\9"/1;K MCDE2VY9UKE6.[=U5FFV.9],Y\\Z-S4E?1T=K-X .'N+HLD8N>!,01J1& 7.@J&*W'B( MH8_6%-J-1%NE@!0V;"5">W2F9'V4$=;OPB'!Z M=^BB@R]U6C^M0M9^'&0;IVPLZ,&HRSOQO(G11^N3AO]60BASA>IGQ"RYZQ+Z M4ZVH)Y6"ZNNGK@RGC'+L8Z+:+EDH MMJ:8U'ZN\&U DZ3\+X5/; NB?O4H#4O2]9.6,[+;G.))*'Q$/WGO0+AP&AY, M9O%@-I!/QDD\&MB/WV5D-B+? >T [(TYA5Z2B?=XEL3#^=#?47O6)]YA/S7- MDT$\F]JI)4D\GXTZ=^E)-!S/X^&T+Y^,1O&L[\_+/5JMP*:K]"09"9Z-W8$9 M6OP G=5.6X'14PB:W $Q)!5A>\>/0W!3<9Z+CI&H&3*GPFOKMAP:$""4 ML=)FH@F+$($[(X.C_G4OSG-W%T6HPC2)QV/I?Y_,)G%_ED@C=DCCJ7PR'\#EFG;#MCP";951 #[^= !?4[HF%[QDN]MV[0<4FK1(+0_-55X;07/%GD[: M[V#)521;OOZ/2O%(]^QU69S"LU8*',PZ1I.K?_N8P&-/4Z>LLUL!B])_ZT6: M[2&I7W3XJ8!BF_7C4G\%?HRE0[.$8 M_IK"@@"'YH+[PE?0"X@7^&"?0U" !< M,FL%I+4!;C+N0PL@D# 9_'>:##JV$P!JCHS?'.\]<*<3^FLR07+K7W5-;M"O M2),(]*OXO6'-SX]-7X@P , -A; L@.N8NDD>=JQ]2XD(QZ@#X>>;?L%D_G@S]QZ,!@'2( M/CP";2=#Z#H@< /?LC#D-48B\JAQL^"WPT'9S^";60#;(X1=ZBR%GQZ:X3-IO_6_GTY.OL!MA1-/X! P,'B2T+\ M>8/I8^@/G/)@X$/',,!V)-@V"5"'@S1I - ,(#B9 I*?16, O$GR.,H$A&82 M&!E@>#8*\%YQ$KC:^\D5S'$R&Z-:8P1"&N"F\7!XD&[1&F9CTJ',835]^@MH MWG08H&"?_9)I +G;QKVOT$B1G 6I' M)@X9=B9&_^T\E$,3$F$2O W&QU+$K-Q0K(^HWDN#U<;,T'+",6F=*(L\G0A' M)2GG5\R1I3T6>O)*AP]0^(0:LT6]6Y"E9U=; 1OWO4=^\)2S$$^FX90X>D-N M,F5HV-4[ZH8_I,G1.Z4G?"D$N-2<\$;M/UK+/F"$ \9=L/&$3XL> M"OO.^L%Z+ MS*06*]KQ23*J0.6V1J'U^%BQ81+&>$P3R9/!L_Z?V9LIL #:J MZ%9_O7@(I0W/?Q..\8"2RN;9T23%JJF8 J 2%W@LF9O$>6#P_1CXF<0R6C4G+ID1H'3]X9XG$@[X MC!<9'"K4/M<76!8LO72.3-7_>?P7UYAA MMT#_!3W\7&5S% 0=:/?(%SY.@*6?)J.GWHM!#-QQ]_=/Z,M!,GDJ'H&H.Q"L M?;B*3C)UY@9R3K\?F!E>_,',G]EDU#*E.)^?@%0T' _M9Q-@(87P@/H/JK&' M<4M6@6GNMC.Y))Z'YI;$$SF&V30Q4/M+^&(\Z]LOA@*:VEG!ALX,3-]37Z*$ M/>K[LTC\AN&/AU/_8Y$XB)%6,O%AJ0\LH1@%@&&4Q-/Q6 (#\,2C27__5\,Y M\/(M$)J !#CPKU.K\JL*$N>DR,Z%8(^^@7"_0IP'#Z;FP=$J?/J4T]C(S.Z] MZ,+FDV%/L30T/54#S)G?KTN8[&["[4^VJ(3 M&RA9('G@[6R=*(@F%J;@(U^JF8+L/95-[.V&KX4M"5Y9P@B"C-#=P"N+>@!# M"/W--7IFL;..@?()#+G/1N5 K_JWLX[E6Y$Z2MO*1-ZM(!\XQ4Z!#SRV$WM> MQV5<#&2V,I:HRAC"-6N SNMM&U,BLAOQ+<+: 38S4_M.L$NBZ>V>C7 BQ+'4 M,2+*Z435K-.Y@45\1"OPU'IV+#&)LG:S^JE-Q@,O% 8833'4'HA*Y.->[BK9?.!0@=VY(G([DSR6P8C_M)UR56Q17.*DJHTYVC M9Z;N:Z"]&>REDZ"M,!GR56>JO+8WPX=%M<4'GY^7&\ )E'S/5JS"2G@^WS0?QL-^2!$-8I;0[;T" M&GB+,E&[EQ%JI 5AX12C;0Z)CMKCHZ#I/*!3'(*@VI]9\'Q?*.8!8UNQ(U-Y MEK43'M"LDNER9 M<5#,'@J>\V0\!E9X;A^T;X"I:-K5(5K( 'Q&\]83Z#-@JD L?Z_E*BW"ME.; M4524.9-RUYB:GL>F*4;^<=B;J[H^O?Y7+J$S(*C0@(G9TR\PT)52W)NH"RKB M9#"!C?(SY2S6! M%ZJ%'C_F;-?*QW*-2\+(;!/?N4E_SG2^R()*G>D.64O :K2&]M=(> SX1!USW'%>&M[,5$N^%%Q^7557U1'6-@V=J#"A8NST3QU7^T$% M\:_R&JM;4H),DTYLT#<):QCML9!)08DZ#(CXZ9PHBHA!T=NFA6'_&KD )S!? M6J0KZ-$!)"FBZ++**>SOQN>"."_^DY&XW7EA^UT!0X32I[*3F.>+M&#[A2GU MB2H P"6JG'(W$.O>T^!->B3\RS"HP+2%A^G!:S$4BHI 5RH7L+-WYGZD9-%1 MO>:%'W(M&-OBK]CP(S:A3AZ__*D? Q#GE]^>1]]J4'!WP(#&H? V0P9_5#VE#)71#MY+.43 I*3-Y@PH-"U MTY0Q4G87FQ0LMN;.BLW2-DTRI51:ZHI/%,"YPFHZA-17)4648(G%BOUU13Y= MF8:EC&: MJO=WV/L[ZEUG?#FE$5D^N,]X-=K_.'6VE[,56YX9(/XJVS:J)M60R\LJ2H&? MYF1SATUBGLP:3($%:7%S,/OI^"O-@7GR@H5ODGE? I>K+6.4%TG&9* M&\MJ7UG S.S,-6$C;UX4]X-K9&NN"(]? 5+F='DZ1S3PI&+.ICZ+JB*&V$]G M \>2S#KXSRR YT"#F0I@:YO$#-NVC\BDG>*+LJM,G[Q?(LX>CHY,\^9.W+GI MJN7N!H[8@AL[6729Y77B@E+_M7+KBS$K%-AJ;YR6@(B,Y7JW-)5^+"YPDD7+ M* -E>I6O>1N4T(1#UKV.?(8=:EL$N@.;E;K,,L)@&.K'DEUA->YX8!^Y56L5 MS^6)*22.)'TMCSA2,-_OL#I6.2:TS=4N:+30CQIW@&ZT1M6L=UP#Y@5%SM,B]6U2I]Q;2NR%Z*;J.(5S>F MW=5O]>\U&?)>L2'O@O0N74W-Y@/0835=+#VI0WNZE:/ZW[(0;(5P C3JT<#! MF4?:+&AW;QR/AM(Y8G$E*#]F0D]%F7<. 58&OUP><&)MA5;[37AM!:< MK);M(DL46)@$J]1H"J7(H'U3VU9E$O$FI0PFE"U6(K)V*[(MH>-> 5+B7;[5 M2?.+6N&'^!FMO4K7O$",M MLEMBRO!VC,WX$JF3 !%&ZE>H-65N!E;_QDSKMW!L"Z"8;C1A\8%;SB%4^F@4 M2\OU:V(WN.Q& P>[V#4Z36#1OL&Y=X.-B<&W@02\\[O/E)E'D&OC*$$WE(&<<"OD_MA^W*#^YSN53_\MT+,2)'!_Y XG%=G[F>OE M<>QT!N-9/)\$EK6/J1P- _$33D#W+_WW+!0%_:F=>6"2#"0+J\OT?18XZ8_B MN8B8_60X<5(]'#SAH1\^-AB.X_GTL8<[" 1F=L3F=_"G5TVY_/GTVY21U 9Y M7B+;8?XT45O0]949[;( =/" D#!D$PQQ4G?EFDV2.KN:HDFZ/#QQH_IN7>F, M1MHU!?O'#H7-^M)DB[[XQP[%W[> +HVF6#RC)Z051G/OMV5:K8C84#TJ=G6J MHULD+S"-27\:#R<)L .&5Z,%4XB%5433+]VQL9P#L;C)!6Y9)4=TQ&WEV]C\[N<;HV?%]3')7FB558$1JND+SI+.:RWG>D MRBOA>YZ03@Q*1BLU19X++S*E$DK&@)H!Z&7*D*)%=@F&#S95W.F[<-MR%1=%F]+-"6W M7I!VM99-?3Q!?;TCY V7"GOZ MM17IF#83P#4;/EC)E,@3A-1FWW MR]F(HBK:?I?SN#_VR=*0$A#8_C@BYQ;SMBN?/5N,>IHPPL(J:=YU1XS(UR.( M"7S%8F. #)G!=MZS=5F+*I>F3@JG=\6B;E%-0VFU9HII-M%:K!A7::6G2]53 MC&BJ#=*Z*-"/K20D>BM^(-#4($=> MCGI;GV.!'V"C"35P<=I(XI?H1)3U4E=(8)&G1M>ME=+*AQ*E;.OQP"-S=JVF M==4!/\!:E.GDG'>:-BYH1I,W,![UDZAS^GPGU6P\2]$E2T[7Z%H8)C@#!6&R MI=E/9102: HE>$DP\PW;BT#$-A6&?@(AIEXIFS];:;3.HKN(3UH4&(%FU/ T M$I>>:ECG3_)=;O3=##DF2Z+Z?EMEIZ1E2"N\[9BF&:3F'5"@!]-C[9H5\<46 M#IGP0[E%ERPL3T*I7LZ5%4RJ3J@P'T7F13E(Y J7V_I0?G)A;:_(19;S!Y44 M6N6-![+*]?K8XJ#3Z#+]\'>%V&3=+1R,^M-)OVS45F0ZRP!$Z=2$%<\DON1= MP&R!7 X*HP*+AU@EQK4^J_INMXS8R@RGRQ (98[X O=-.>[*&31*L:./+*(R M/75]K+RO9<' @"I;*!60R#-S$2G5/IJ)@ T]U;E5;2-,@IYR'9GXB*7D_DQS M\O@N,FUY#IQ?:?;4YC3N5&@\/D*#,/]@WNNSW]X@Z0T]Q[V+CP<&CKN #PL] MX!$][5+-&![SE\R\9Z@\%X9M]:&JPXJ0%'+ZT3/D8&A1:N=][ZH7W60K4NE9 MG% I% 0;!%MEDV&M=J9NB,TF3FZ+OOMV@4H(*G7$0<" $@NMI=MB/JT\VVC M$3I$Y)-;LQ)@5F7 UA5^D4@R=* N63".'U-3%(1V&S[G^"25X!-V9Z(,G;1L M]A):YYN\,:I_7IFNTP&HKHW$Q1P^L)JYN4=U]1 GH"+$G(!F4NYZO?YZ2QQ) M2[L\(*^$@942."X4YV># 726>9,=#@=3XJILJ=&)FPH-6'T0I6"/=#C^DM2^ MO%\,R]I7KS+1OPM*.TM:*AAMH9/0=@QK&#K YT3[#&&SY)!- Y@+D-7MG,*6 M2E_HT%>:/&8VSE0QS(:+[)@@^U5H"]I+9LV^7SV*T2+YY:DB/^1I@31"YX9^ M,*R4F04O3*?TE:7'167 *"-.B H&VJ*^'':FB_'0[IG:%#!]QDNALXE-'R^2G0!5TLK97 FK7&Z'T776RR"A#)\B'Z$;V-KLAU[P%. M[C:O=7UR,3[\/ -\OT8C+I,2J@'/ K\0X6UDF*F<54OW*.-KIH3\RJ2CKVAO M="$3D"[R%=T G09DW:KLUE+ZOC!(0AA];EK4T"F3WM/,N@HL6#^H2DZFN#J# M>8YNB::6CTXH(OQL2Z-9WS^=7I?"2XLJ#+47FJM[BXD244<5ED.&2@XY]+7D M.K=IOF*7G)7Y2EE0VBS%+]$\=/W[/%NN4X6?GI-+%Z6-YK_I_][B]%@Y+^;_ M&J"=+2G*^B(Z=.PRQDJ0@FP#:"L9=ZA^^[W^I!^]R!85M1M,G';J*L^=QPK^ M]_>*6L:AT^+['8AR@YGW='UPCF>[VQTJ99Q&UH-MV'=>O5DV);FV[>]8-_/4 MX]V*\_:V!K+>N=OJ9CWH2(8@M[6S5ZF]T;F[4;G)M]3"*M27TO$Y92 M:4PCZUJO9^NM;PHJ:7NV#!8HM!,_UU0[ZJ]R6I,ZI-8"B* MTLP^I#8'N:\$=FH B.0=K7SNR$+O+'.*L3-+CDW(USO$1TKX,!(CM?^+:PEG;']I(]_8U$^MA'[,WA MF]:U20GE1?U<,''RLFO\+H#]=-#YEN!!P#M@ZID$=_@]:A^/T#T?:H^'A%AO M]JL\M38ISI6M\\]*31]F*T?J/L@OZ-'TF5;OZP,Z ME^8/P66J8QF.XO%@1)N<)*,XZ4_,\F_:IA-=^K5:,60K+; O MK]\YYM?K.W.OZ3BW.Q@S%=6E.ODU%>5C=#7L[:WZ$/)FX'BMZ3OM^T[V9 MC+KY)8MFL[&9ABPDPI$@"OZSCR!;L@R6LL=;:SDT6?2:;)=6R2MM'Z RR*+B ML-X=WP!&E7YU,65[%Z3AK+79=I^/W@HVW?1!D$E6 E',.UY]HD;@*K>3+%L>]8]V[-N9[5P9(]; M9V!-LU95M<>"]+U!%PDGY29T,8P'TUD'MG#OOE-@54GYRHO/V%?56RQT:W*B M;&@-QC-V'_=]5A-D[VIU6LKWI,4\ '(AI$G/DF>^*XHVG!H9CLCRN\Q<*;K) M8C.M($7HOPS[B:0[8,8K+M<6/1F($"5%^"L[ A6&331A)KS^J0K MD"%R4KCJ\'@=-F\\N5$*-C':,K^C-42P%8)H;VQ\:XT'N4A> R?[ $!<6\=W M4T'+9F)ABDYUJ>F4B&EU,A*YIG(RP$:IS:K#OO9JE61LS;9<=%"'$:MW-HL? MD7/UE"U5I_S+6JG"RV^;3*QMNZ?]SLVL?0]V)]&23LP8R#H5ZUDM#R1IRC.I MF#RF?*I1'P5GPQ=[SV".\CQM."8>1J"3("^8EF.-#NYM.>$H;0X"Y&:W4<.8 MD$3CW,+/\=SI_FL0(!2%3*!YS01&&=G+K?$H)],+67&TPU@F.N;ZX:KL<5H# M^"^0GFBSORKN2=888*^J95ZK"IZE J^SFBN.*URGSEW9_+7*')T$2+><<[0/ MS76G."M* X*K)A9,!W%7WB[F!96.Y&1GQN(3W'T*]=5W)7@"VK"C]KL7$O=0G]/9<=,"H-ZFZ*5#LL48N2U::?-4'7+[MM(%YN>W3V)SA3( MJ1!/ZM7D5(?3SU?(XO/YWP*G@6 82@^YM[.F%F$/4 M^>3W?FLW\/KZ3#D_F*QE4H'Z$ICC-:>=R%:D@W1;^%Z2RDJR3O.-LMU[G6 ! M6B;PAJ[:.N,_9BW75G]4>; M'V"'S 56C'!X$.B?UL,LQ!:&R97.5=!^Z<^),Z%\$I5.[V0^XE=4>/9#GMVS M3@GA+R\K^C80. M7X8VE=:LR)=R3.:@ EL60ZP<=TE6&32I4')T+M8:[[2V/!RP6FM] &JJ"%4' MX?!9=*?=?3@AL#@7E&6@5^4Z@9($R@1UME;^+3\K7\'2\=8Q>VXSI)H\8C*; MJW6:J[^&7F].9495I>V,92*8!3I4D/N%\C'"F)(-$!6 #^::LAMRLN-,N_82 MX*CMCSE&P9R3@4^Q>;(#7?H9?8[(-LM5.5BJ=Z1HE=#)%GM9H5.2U?<72F$@ MJ!>[\[ RP83UQB%++0YIDI!8$/FV9(V&@YI<_/C.UL50!2W7A,(8O64UNWHO6X5:;"O-$(CBM0F(![ M73R'#>?>C-C&OMEB27!21M7L7V07Q$86 AQ2 9"_&AZ]*0H/+?YA74;-R,^K M_(-VP &V_!3D(8S;65*^(#-^6F4M=T'M]:W]J99W*1KD 9P G2S9N0V7U-J1 M(N6H_1L9+R'"@A8/K8^>*9FI7"EE!2&%6GD>^BVI[EY)R$25%M9YJ$4(!W^@ M["NUF03WP)Z5->=*TB'YJNR)H"5R]L_,B0HZD!4?\JHLM,>$G*H9V52Y=UA[ MG+RM(DX65>M'<5NI8KXW*O.FGIUUU#3)U*CJ44,Y/&L3 _;3;G6KBU4H(>'81A/Z=T M7):P!6KCR(7'1C& ]I6E1D76U5(\-IIX5D B:D0M+O,KL7(WK66>/GINU6*V M.I3YUC*QVF-:F271&+4WP?FB0F\[D$.65;Z56O(@$I(=M9"1S=ZAI&_DT'0L MC\["H">M?0_QE\4,=!*IY7[,<3'=4D)[5MS">605I>C$VZ=\0'U%(MH(&JYC M%8,H?XO536I\N$WSBHHZ-0!?2IN&2H8&Y=IEUH83$^!@_#_1X3_;;51P"/Q: MWJ&#);FB:^AIN091=C.=4HDH>9'=<^TRVD*6YWU/'Q>U/V*/#^^J!,ZM'JBE MAW6V);;-#&CR<39 STAS(;JFRO4&7Q"= #2I,MMM=YLMN;GS+:&!\*:1)=SJ MB#_3]M^F>!F0K^"AZ@PW?:Y:M[$_MQ MUJS1$K\$V2FM!8&]@@.[ _8)<>.M<"7]Q0?8VF\7G.&;0LL,VKF;R!YL&>R- MVHF'5IJ.J'ZH.48+=UF?NW_4P3.2G;(AI[W'(2ZD8YM;NY95<*?-1HI8Y1II3.KCX.:'-M?K-[3#+4[NR*W]I1MX!X+D M?#DI.R0?TR9&(C1W M$H$1Q3.O0TFEH-^E#+[1<] 9IET-F:[HYZ8\$D6M=1>_LW+61Q7"#>HU[8]' MY"IYCU M8-R;?>6WI0.?AV%>ID&)R.4U8WF6)= M"*=BM2HVG8QZ S$555T7OIA\Y=76U26F$RQO(#=3E]5U7N@SX\* ;UE@TR^_ MDU+<_[67+'A?'G6)W"+7A]JY[8.'XR+#O8V\*S>+)[-!-.^-)8P,^G /9PBQ M\WWW;1*/YB*-!X*AUV8<]T5MM23!:^-?ME$\Z0^B(;XTW0'X)M&88'OO-6N5 MF$YZ4W\2DW@R$-[4V&7[@DWBX6 03>1]&,3#Z30BA.->+4 ,LZ0?.4@*B]9, M^A%=7^]2N359KZW%H!1E=BL*=_(52QV%9=)0"BLR3FC:K?W0^ 22Q+BA1?L+ M U,KX8?V788.7UO@.@"2;F42E7>"1^&-"I06WJ0_E209&(4A?Y37G!16.T:W MU"X^7\EI@UL%Y @CIE1%!TY5RC*QMQ>U! ABQH[@('QPGM'H K,%'GKO MFPR]%F&%N*YUYC4WL$-IU4R:%OWT#:?IDO410DZ/*PHF))?'5CRC\KL&(FX# M'UQW<])4"O=V5FM2+"(G?*1H/8ZKPRGHG&EL3$@7J'L1H7O 8[A;\ *S"_U M;A6O;*PRT-!KXL^?>GNJLT&A$XZQ872$,EL7 9.^G8/75=PLH0Z;W\@=Z]H7 M&$PP&<<^9$K[3Z*%S9,$(D*%\(X1P@"M<(TQW"*_R3$$G=SU;'JFF?97/;@: MTO =O9BCBW#]YMQ*!P2DC:AA3D&OG6R"R)]S:+2_[TI$!6\K4LR8J]3(ZH?[ M^H/-.F,7GU>D4A!]+% ETDH9^+XH_8?Z7X2?2X*+I4\M+HOMKOOGR4L$JRAY MJO\:F+^&3W57:2 -_N<_74)-["(,?V0F@Y3T,U'906U"7C\U[[F-0VT;?$/C M'E.T4/\[%^D:97W7+[,[>Y++A](3>SG?]ZWV7^'?%BAZJ.>W@4:=A/1W"(Y? M8(<>"9'MH@->"]\)@!G:8ZBW*4+,Y,[WSFKG(HNSO3&S>GARY4^@E\;-$SI)X.+>G9W94:TJ! MRT*=Y .E02?-?;:R,:;)()Z)G+: F^8S/QVQG;F;I?[<5+Z[J:CB-^_- *FE,'3OW MH^6U*1BO%L]F% M?=HO0'73J8^=!@F,Z*=)<572;2W8U"\,0W.?3OU\%%HE'3XJ0.?3?CSJSTA; M!OAT.!8JZ2\-G)\(K("R/A^PCN8 ?+@)"(6SF3!J'(1'.,O9* F0*?FDP#\ M._:- #PF\W@T&6!*(PRGU2:-H^ MZ0/ #?PS1%M$("^/:]UPU*[C/EDQ^C 9 M;4DF_'RSV%4U<58RW2Y8;M? 1]UDHEK?Y\\8]=N1DR]P6^'$$S@$%&@G"?T+D#>8/H;^ MP"D/!CYT# -L1X)MDP!U.$B3!@#- (*3*2#Y630&P)LDCZ-,0&@F@9$!AF>C M .\5)X&KO9]!!.W.C-'S(C4"Y759[ M7::#EJ.T_EO0J(/2+56(:_O ML)5K^R\#RD !&<9YS. ] MZH,88NF6\Y/AV3-@(_8'U-(?[GG2 8-75,.,;,&YA4"=^E>+S+%-JJPC['2X M$Q>Z8'%;I0<.@9Y,A>C43?MLX\I$#YT1[;]7-O/7NT,MGYK#5;9,#CUV73G7 M..-LN=QM5!ZB2^?(5/CMX[^X1D__(MU80C=7B<\%T@;\//(9S!-@VZ;)Z*GW M8A /6V7AG.^?T)>#9"(3V8$X(VJ$G>O('PKD0]?:NWQ; ^UUY@:\;+\?F!GB MFL',G]EDU%)F.I^? .<[' _M9Q-@$P2#B#(NY4AJ6BD###IQ)I?$\]#5F M/)E,?%CJ ]E/9 G>DQ'(T..Q! ;@>T:3_OZOAG/@UUH@- $NWZK,]Q%M'4F\ MT@D\6LA,5A9R4:.'6B\^O:M?F;;;F;EO!"IP7YW)V1^N@'6AUG=4!2PV(UD8 M:97"TO].05Z:RB;VMF)!R(E\)>ICP0U)Y"N+2N#&"YD;*&&5<1BR@=H)#+E/ M+]Z&1A< 3*' M\KI!0FEULM+VUXG-VD9@$#^HOW.*!255N_MX/=B 1$<8OJ M96!:@=HFQ9PJ>=/*3S$"+"VS0 6G_;'0"3V)Z5X\(&KG>G"/.9\%^3*=35UU$/;&[*X]&9Q5,IW+)^,$]L>2D9=977_3F<[F! 75H6"A3L9C MX.SF]D'[!AS,CX-*?0"?T;SU!/JTVE6O#D9&V1[1#>V2 L0>X31I/ 1-@LF5 M[Z?P&R&0O$FG-#L!DV78J\D,P]GCK,.6P MB'I?J6''KTSP52-7K6TW/UQ"69$;UU&MW54'U$HP%(><"PA&U_;])RR*UD W M7(^KBQ1]J7\#N=2ZFII#A\EC_GDJ[>*4&NT.TJ%,I_X!6>(4 !CSR$_1-@9$ M)F4KD#?GG>XZK]N%_"Y-!<%CL [GED"O=DHD8A@WS$W[08>;NC=\LTV+AS_7 M[7PV=>O\\^#Y4W1O6JWK1;IJ#TU$%+-X!*>PR&ZI'B7NY9A#2]P$I-U90MN M^<;DVODMU+B?F-S/#:$*>00"RRR$K-?D.Q:L\M%9<=)C!WQ^97:4--](Q7HK M.6J'!_V1(+90:+K^5)K&@2FM;HPZ51UKG#PH%6"Y63% _]..%SM1D];_DZ"O8)0!*J7B/N&A M[^HQ&([C^?2QAQM(R7G(#Q1#PT[]]/U'L00[54F=J*]78N6Q)_W:U&_@TN6' M59A HK"F^W$JS,$PG@%KU-)<@A 9#R>CMJYR-B(K9EM).8_[8_\N#\G#TM/9 M'*Q2>)1S?;MR(54S+"L3"^A^^D?!0SN7/PH>_JL5/-P?6'"@WI]?_NN0$?V/ M>H)_U!/\HY[@\(]Z@LZ_?]03_*.>H%]/4-42.L((O*\@>U;]&\C([WG%*=.;QY3=%UF%#N"#:XT/]B[P_=7SZ.3)4YT",&^RS9[VR=QI M[ZU5.]0O@5O*BH:5K-W;UY1;FWZPN]D2T^JLTDJY> /A MQ?6A_M^V)MG^'(3_GP.@E?B@-9J'GAXS08.M3(O_>D7<^?]V>P-<-/3'$*?= MM<3.['T&\D\C!: '[L#WNZ)G]-6>JW5GAJ!0DB:OW1WEK(?1ET=^@4:75%$H=GT=HY:P)>5'A[>P#Y;GIB,$[,Q&?)@G#IER92D&^5PIJ.DAK M9MJ3;XNG6;(=[PI*G/I!?M,>0]8;K@V2I5 ]%2E&[I9IL[P[W6TY8._Q9WBJ MC*GB]JN/,'14'XK\^HWYFF-*:-W7F+7_%A=V11N=JO('5PT6/2)SX'^=?*[]Y/%ZH#P"H60-D^Q4GF.O[2 MHR2S$)-BS\_U37@\NG9SFOEC^6G+.O-Y[6>4<=SLLKXKZ<:M>_) M)A=8>RM4YM$;X&;O"D0'!1)T^;VHQ<@5[%$;!A"5Q!Y>%P^81761W>9%H2 V M##!V>YZWTW@)C@RSR&A&@K+(J%)2(J_,)VRC-]R[\'Y2CHB($D+XL)@WX3=> MQ@B/FER=!=Q<3P./25H,/@3"NF=RNDGW)'6+@Y/5#;MF!Z^Z)J\XP:[G!Y9@ M6^U9A6UT>"&V[9[)=B_'",V=+_8O2#;K7I%L=7!)LO&^&7RZY:'%R*;M@UN^[)'T@; M$Q[L.Y"FY-&#>+D ?$\L<_!'!-B[$$(%\8X'%0>C ]^])ZK7E+12WA&& [IF"(5N>GV@D?]EF?J:HLZ06H]Q5*&R1^WH:?0:]X9$["Z==S+:JA)Q17,N_XYNP# M[ F[6)95Q9$URW2;+D.WQQD?*3FKA7U

8(C MJ<(/;]BWND7+^^F(N8CKL,Z:1M5_X?AU_^(Y#?:.A15W\K0XM,:N=H^.8>CTH;7;V< M,I5#)R\W+*Y,BN'N87R5L<\*J/K,2O,8,)R8)BK/70L%N8VGX]"E<+M(5S_M M^-8>>5"G(D96Z(6H"G/H.(\E1:F-#[OS"4VN&Q+<#O@]:K ] M@>$!WJXCI/?1F_,)@: !MNC.?69-L@:2]M.QYZ)$,"%F+$!;!$Q7&AG0U/0' M7F]ND)YWV[LBH%#S;=Q?J94*3));>P%,!H#3VW5:'+W1TVG+IS*(?KKL:#Q; M+C.[%+/M4EZ:4F&VD@H[\791VO9:0XJZ.KH%SJCQ)VXQ&!)I*I05Z,*VVA7[ MVK7.0LM\5FOJSTQH5)>!;STFA]2H"%_F0YC((SL9*.OY2#OH#$;1*GTX1%AD9?*I?=[)JR>A""U3%\\B )T:P+\H]'>F.Z(7Z3>EYD0((S4:6#=0]" MG),5U!\72W]@LO/09 =!:_\O7 *2UT^L M+L )Y;=%]-,.T/)*.!*@]W4UH15^3R1 M#4PZ*" ^/M[(WX5/C! YHJ-P_,@O6-3!0"&W[^Z(HLZ('D_XZ@K<0@_1%=P4 M) #F:8"=Z8I2/+J# V!Z&IW)^!6]?4=ZXU%C#Y58ML;C+ )C!;D457#TSYI' M.OHV[17.7F2+G@K='?AAHW](;1%:@+)6PEO3C++4[[8(!^P%IR:U M!+8.XX.6JEPGE_ZLO6$J+"KL:2\LP5;=Z0\>VY&2+BC FPJZ_LK=?TN"$-7*I++J56K$ Z/A]HF*P+EY!B'$!<\4EX0.RJPGCC[ MJ-1#8H'N>#Q02L-$1PS3=OO0V&I#_F+1$C -^8"P/QD)[GB_,^Q8,7?6'4]. M@ZK"+G4LFCV%Q0.)/CD6.@XH9/=O(M-K]+:!!O_8P1]9M7YH,[7P!@C^J5&/ M;\BWT&1T]"L1[T$31S-YW['P$(??JEB[4Q+%;!@G0)0:53M+\^%N]:B,>8KVJ([U M*01\P.ZJTLK%RI8X7>:TT)= U3[%;LTDE?-)C \-NI2#^G?;1FNX[[X__X[, M\E5S%UUG'P$_70/K[Y@XX+T D'WK1]^D&%H/AD4VU([X=8T!V6X"M ME^>^C*D94S5J.R(H@.LZ99A^T;+3PNG#51TJDS6"(:LF[0/1[C@@@S MP]$]JAN5F*S[ZUG0GF!]&,GV9W.0';WT@%!M'-3V./>V._&=NS_#Z:&9)WR/ MR62QLM>#HK*<8\B%'Z6[9D3<]TBLNL_\VS)HQ_@V5]P.'-#]5=[_ (GO9'_P31DS!P$FV(@I?]TWAO[#Y.@C11#*P-/^Z'!9KU) MH-LD%."!L9;!V0;:#D,/Q\&QAJ%>D^!^);UIX.&H-PAV$!AL$E0^A?&6?Q&, MZSC=(@8;Y?<$%_R[#,6'+4A;T1D@J&YQ-1GL59>;.!I*FRAMN@L,6C*# +.< M!JPGI\B&ZMR?WAT-[M4HM%5?N29E_X@#X#0*/;S:+>KL'SN\S!.I%#<(4)A9P( & - M - >&POAC!7JOC@.&6<8X;*"U%@KB.ID PIO9294Q82HZ0T28PZ4]?U'88(AU' M*W;'5 EB47$50K]W 9M_*Q(SM]\KH6[> 'N=O)M,W*?SF['_K F<0V U M/B\KO$1]+^ON0[P4?BER^(M_NU5)],Y'!*:BRZR%#+!LB_CP2+#=7 M)0K'!)423!L)09G@J&'H,EI#R\:8TD?S3?Z6;FG7*;![S"UQ(3 4G:E/W9K# M77,;Y$TUJ[TI.SM(%Q1D)=2G2A^'-VO3.OA!XI34S;I.>P"MCHJ"KC]2DG&& M[6%^6] [L& 4H*X.R(4DSUK/M$JL'5A"L,)2D7C3\T.B8H%KU;53G1[*/#U! MYM?^G#/,L41T$UKW_C%_RO^9>';Y]\C-K\H8^!49S?_R"4#.3P'2/W[(V?7Q M,YJ9Z 0@KTX!\E_?;J<=,C8FF:TYIO>"946H(KS%S4F28,MC!LD0?C43+-V: M)H9Q1LLKM-2/.UOZ.C?!*:JH>C!';((A'.PO!MSS^UV+7B*$@WV/$U(Q._,. MSU313U!+ P04 " "GCJ10A[,/"$,% !8*@ #P 'AL+W=O"3WL[(IB?]WKZ63',9KJ'6-%GO6\?C_JY92+SNW-\5Q+U7,W9,&2@DMA M"FW!"V=O^M=^NTFHJ7!@*[H>=OH=0LM"WO.L8&I""_95R7+/Q7;8&73(ABM= MQ/;:5S*5G:7U? MA6FQ7[!$77.S0\W2@07'@QPOYO'B<389K:83KV 'T $#O M8H#D:DD=2!^ ]/\@9+PR/T_3N0% ZPLNUQW57%NLI6+:5#V9L?O0E-W'A7MFB=7**$ED:;0BMH92"O,_8?9( M%Q,T"[):[BE7Y(5F)2-/C&K3S_8 MX,'D%<&R&)Y9@N8L)262 M;1'%4FZ>$*5,,YX..T@= V1W3)CB!VJC9M/+NE#E"1WDC &R-.92)"8(MW&U MG5?,.&1F FSR0;H8(/LB+F3RVC6SLQEN8YF;,^F3J1G2Q@#9&S/3?#DC*_K. MW#;S(%UXR+J8\ -/F4AUG8A0)4S7FB>8*1+OJ'(Q(5UXR+JHNG8GLY0I_1>9 M?BM-ON2R@3D(LBL>C;^:'0JIPL/.-F2>\Z*:-ZHN'LBF> MV5ZJHG)$S+:_3W(>9 RS5B@G9PT>VQ[F@Z@/4Q037L)"U$ M9.,CR^9L2%&#N@O3D&P"]!6M.J3HVL>X.H-(S !89WQK*[N8D&\"9-^ F(VI M)X!\$_R9E2V#:3,#19."T#H&JKK=Q81\$R#[I@4SX[1Z;6?R&#=>"\"W)NB) MS!%SPC7=;A7;U@^[>?@5.[B8D&\"9-^ T6]S;$+^"9#] V/Z+B:DH !907"0 MWL"$+!0@6Z@U2&]Q4 Y*$!V4!MDE\RIV;:AN_O>$7)0B+U,=B:9^&A.%Q-R M4'B9G,?,3M4.%Q-R4'BQG*=J3Q<3YY!Y0F3S?*2WW>JID:*: M@TQ 5!63Z;N+";DG1';/3\S[LLHIG^QW9V7^P>E^\Q)![HFP%]N@%7W2=3$A M]T3H^4_+XD'+R(P@\T3HV<\II)W-ZRC>%60$F2?"-L]O+R'.M"1DG:BR3J^J MK&]O4K;A@J5SCFS++QJ9L(1XEM>75.8X?==[^ M!U!+ P04 " "GCJ10M]#"#R@" "E)@ &@ 'AL+U]R96QS+W=OMP"'V]?:T/.#GG<5.'M%'YUPVMI#[NE!#\M!#_2@Q^6@ M1WI07 ,9U_PDA#5?ZPBXCGRO(P [\L6.@.S(-SL"M"-?[0C8CGRW(X [\N6. M@.[(MSL"O"-?;P%Z"U]O 7K+#9ZUT<,V7V\!>@M?;P%Z"U]O 7H+7V\!>@M? M;P%Z"U]O 7H+7V\!>@M?;P5Z*U]O!7HK7V\%>NL-SDK080E?;P5Z*U]O!7HK M7V\%>BM?;P5Z*U]O!7HK7V\%>BM?;P-Z&U]O WH;7V\#>AM?;P-ZVPW.NM%A M-U]O WH;7V\#>AM?;P-Z&U]O WH;7V\#>AM?;P=Z.U]O!WH[7V\'>CM?;P=Z M.U]O!WK[#=Y5HI>5?+T=Z.U\O1WH[7R]'>CM?+T=Z.U\O1/0._'U3D#OQ-<[ M ;T37^\$]$Y\O1/0._'U3C.]2U,/>?=]'([MH5R[Y)_AG];,X"[C^RE?/^,R M]=/],Z7':4L.E\^K_Y\N4_]$A'E%>?X-4$L#!!0 ( *>.I%#>GY_G\@$ M 8F 3 6T-O;G1E;G1?5'EP97-=+GAM;,W:RT[#,! %T%^ILD6-ZU=X MB'8#; $)?L DTR9J$ENV"^7O<<)# A6IB%:ZFZ;).#,WJ756O7Q\=10FVZ[M MPSRK8W07C(6RILZ$W#KJ4V5I?6=B.O4KYDRY-BMB8C8K6&G[2'V0 MKLVS5 T9VV/"SQN'\W3?W3-YWU3TIVAVN6Q*JFRYZ=(M>7">3!5JHMBU>:B- MI^HA^J9??>2]-S[>FBXU9MN6?5N0'R]'?&UI=X"Q30(#D*D!RG(#G.0'*<@^3@,Y0@**)R%%(YBJD< M!56.HBI'896CN,I18.4HL@H4606*K )%5H$BJT"15:#(*E!D%2BR"A19!8JL M$D56B2*K1)%5HL@J4625*+)*%%DEBJP215:)(JM"D56AR*I09%4HLBH4616* MK I%5H4BJT*15:'(JE%DU2BR:A19-8JL&D56C2*K1I%5H\BJ4635*+(6*+(6 M*+(6*+(6*+(61Y1U/.:=:?K?DCQ9N_Z %!+ 0(4 Q0 ( *>. MI% ?(\\#P !," + " 0 !?.I% GZ(<.@@ +$ 0 " >D !D M;V-0&UL4$L! A0#% @ IXZD4%]V-%3O *P( !$ M ( !F0$ &1O8U!R;W!S+V-O&UL4$L! A0#% @ MIXZD4)E&PO=V]R:W-H965T&UL4$L! A0#% @ MIXZD4(]V?61I! ,!4 !@ ( !80P 'AL+W=O.I%!KC?6/4P0 &X4 8 " 7$9 !X M;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ IXZD4-M7"#(.!0 )1D !@ ( ! M02 'AL+W=O.I%!2 M @F[LP$ -(# 8 " 84E !X;"]W;W)K&PO=V]R:W-H965T.I% 0FC#.M $ -(# 9 " 5DI !X;"]W;W)K&UL4$L! A0#% @ IXZD4%3I'Y.T 0 T@, !D M ( !1"L 'AL+W=O&PO M=V]R:W-H965T.I%#AB?Y0M0$ M -(# 9 " 1@O !X;"]W;W)K&UL4$L! A0#% @ IXZD4$?VZ>6R 0 T@, !D ( ! M!#$ 'AL+W=O&PO=V]R:W-H965T.I% V1&NM $ -(# 9 M " =&UL4$L! A0#% M @ IXZD4%R,T*FT 0 T@, !D ( !PC8 'AL+W=O&PO=V]R:W-H965T. MI%!Z9.43LP$ -$# 9 " 5A !X;"]W;W)K&UL4$L! A0#% @ IXZD4':$=["T 0 T@, !D M ( !0D( 'AL+W=O&PO=V]R M:W-H965T.I%!C\G4YM@$ -(# M 9 " 19& !X;"]W;W)K&UL M4$L! A0#% @ IXZD4)X&A(*T 0 T@, !D ( ! T@ M 'AL+W=O! M:M(! "&PO=V]R:W-H965T.I%"7\X:?T $ )P$ 9 M " ?=+ !X;"]W;W)K&UL4$L! A0#% @ MIXZD4(]ML"BV 0 T@, !D ( !_DT 'AL+W=O&PO=V]R:W-H965T.I%!@^6.FP $ #<$ 9 " =I1 !X;"]W M;W)K&UL4$L! A0#% @ IXZD4#@.M@+" 0 M-P0 !D ( !T5, 'AL+W=O&PO=V]R:W-H965T.I%#I M^@NRQ $ #<$ 9 " ;=7 !X;"]W;W)K&UL4$L! A0#% @ IXZD4*GH0YC& 0 -P0 !D M ( !LED 'AL+W=O&PO=V]R:W-H M965T.I% (M(7LW0$ +D$ 9 M " 9U= !X;"]W;W)K&UL4$L! M A0#% @ IXZD4.HK.,5O @ A@@ !D ( !L5\ 'AL M+W=O&PO=V]R:W-H965T.I% 6PJ'P^P$ ",% 9 " M 1%E !X;"]W;W)K&UL4$L! A0#% @ IXZD M4-X.\&O% 0 -P0 !D ( !0V< 'AL+W=O&PO=V]R:W-H965T.I%"->X#],P( #@& 9 " ;%K !X;"]W;W)K M&UL4$L! A0#% @ IXZD4*ZT!"7D!@ LBH M !D ( !&VX 'AL+W=O&PO=V]R:W-H965T.I%#\:5VN M3P0 ,5 9 " >5W !X;"]W;W)K&UL4$L! A0#% @ IXZD4/V;\&%2 @ 90< !D M ( !:WP 'AL+W=O&PO=V]R:W-H965T M.I% 7\NB%1P, !$/ 9 M " ;J! !X;"]W;W)K&UL4$L! A0# M% @ IXZD4(4!SN\' @ 08 !D ( !.(4 'AL+W=O M&PO=V]R:W-H965T.I%!CY&WJ4 , ',- 9 " >B) M !X;"]W;W)K&UL4$L! A0#% @ IXZD4.&PO=V]R:W-H965T.I%"J6.'VQP( T+ 9 " ?R2 !X;"]W;W)K&UL4$L! A0#% @ IXZD4,3]?7KG 0 ^@0 !D M ( !^I4 'AL+W=O&PO M=V]R:W-H965T.I% *N):@BP( M (0( 9 " 2V; !X;"]W;W)K&UL4$L! A0#% @ IXZD4"NT#%*V 0 U@, !D ( ! M[YT 'AL+W=O&PO=V]R:W-H965T.I% KV>DV!P0 #H4 9 M " <*B !X;"]W;W)K&UL4$L! A0#% M @ IXZD4+YV!Y(A @ ;P8 !D ( ! *< 'AL+W=O.I%#<(4)A9P( & - M - " 2P& 0!X;"]S='EL97,N>&UL4$L! A0#% @ MIXZD4(>S#PA#!0 6"H \ ( !O@@! 'AL+W=O.I%"WT,(/* ( *4F : " M 2X. 0!X;"]?. MI%#>GY_G\@$ 8F 3 " 8X0 0!;0V]N=&5N=%]4>7!E <&UL4$L%!@ !) $D \1, +$2 0 $! end XML 29 R55.htm IDEA: XBRL DOCUMENT v3.20.1
Income Taxes (Details)
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Income Taxes    
Federal statutory income tax rate (as a percent) 21.00%  
Effective tax rate on income before provision for income taxes including income attributable to noncontrolling interests (as a percent) 29.00% 21.30%
Effective tax rate on income before provision for income taxes and noncontrolling interests (as a percent)   29.00%
Minimum period of statute of limitations of state and foreign jurisdictions 3 years  
Maximum period of statute of limitations of state and foreign jurisdictions 5 years  

XML 30 R51.htm IDEA: XBRL DOCUMENT v3.20.1
Derivative Instruments (Details)
$ in Millions
3 Months Ended
Sep. 13, 2018
USD ($)
Mar. 31, 2020
USD ($)
instrument
Dec. 31, 2019
USD ($)
Derivative Instruments      
Number of Instruments used for trading | instrument   0  
Interest rate swap      
Derivative Instruments      
Notional Amount | $ $ 165.0 $ 150.6 $ 152.6
Notional amount interest rate 75.00%    
Notional amount adjustment 75.00%    
XML 31 R39.htm IDEA: XBRL DOCUMENT v3.20.1
Basis of Presentation (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2020
USD ($)
customer
item
Mar. 31, 2019
USD ($)
customer
Customer concentration    
Number of top customers 10  
Number of calendar years in which top customers typically generate minimum specified percentage of revenue | item 1  
Minimum percentage of revenues generated by top ten customers 50.00%  
Revenue | $ $ 743,243 $ 661,558
Revenues | Customer concentration | Top ten customers    
Customer concentration    
Number of top customers 10 10
Percentage of concentration risk 50.10% 49.10%
Revenues | Customer concentration | Pipeline Customer [Member]    
Customer concentration    
Percentage of concentration risk 11.30%  
Number of customers 1  
XML 32 R31.htm IDEA: XBRL DOCUMENT v3.20.1
Credit Arrangements (Tables)
3 Months Ended
Mar. 31, 2020
Credit Arrangements  
Schedule of long-term debt and credit facilities

Long-term debt and credit facilities consists of the following (in thousands):

March 31, 

December 31, 

    

2020

    

2019

 

Term loan

$

200,750

$

203,500

Revolving credit facility

Commercial equipment notes

93,309

105,114

Mortgage notes

 

49,854

 

43,474

Total debt

343,913

352,088

Unamortized debt issuance costs

(734)

(787)

Total debt, net

$

343,179

$

351,301

Less: current portion

 

(52,430)

 

(55,659)

Long-term debt, net of current portion

$

290,749

$

295,642

XML 33 R35.htm IDEA: XBRL DOCUMENT v3.20.1
Dividends and Earnings Per Share (Tables)
3 Months Ended
Mar. 31, 2020
Dividends and Earnings Per Share  
Schedule of cash dividends paid or declared

We paid cash dividends during 2020 and 2019 as follows:

Declaration Date

    

Record Date

    

Date Paid

    

Amount Per Share

November 2, 2018

December 31, 2018

January 15, 2019

0.060

February 26, 2019

March 29, 2019

April 15, 2019

0.060

May 3, 2019

June 28, 2019

July 15, 2019

0.060

August 2, 2019

September 30, 2019

October 15, 2019

0.060

October 31, 2019

December 31, 2019

January 15, 2020

0.060

February 21, 2020

March 31, 2020

April 15, 2020

0.060

Schedule of computation of basic and diluted earnings per share

The table below presents the computation of basic and diluted (loss) earnings per share for the three months ended March 31, 2020 and 2019 (in thousands, except per share amounts).

Three Months Ended March 31, 

    

2020

    

2019

 

Numerator:

Net (loss) income attributable to Primoris

$

(3,737)

$

1,947

Denominator:

Weighted average shares for computation of basic earnings per share

 

48,588

 

50,770

Dilutive effect of shares issued to independent directors (1)

 

 

8

Dilutive effect of restricted stock units (1)

 

 

410

Weighted average shares for computation of diluted (loss) earnings per share

 

48,588

 

51,188

(Loss) earnings per share attributable to Primoris:

Basic

$

(0.08)

$

0.04

Diluted

$

(0.08)

$

0.04

(1)The dilutive effect of shares issued to independent directors and restricted stock units of 9 and 300, respectively, for the three months ended March 31, 2020, were excluded from the weighted average diluted shares outstanding for the three months ended March 31, 2020, as their inclusion would be anti-dilutive.
XML 34 R16.htm IDEA: XBRL DOCUMENT v3.20.1
Credit Arrangements
3 Months Ended
Mar. 31, 2020
Credit Arrangements  
Credit Arrangements

Note 8—Credit Arrangements

Long-term debt and credit facilities consists of the following (in thousands):

March 31, 

December 31, 

    

2020

    

2019

 

Term loan

$

200,750

$

203,500

Revolving credit facility

Commercial equipment notes

93,309

105,114

Mortgage notes

 

49,854

 

43,474

Total debt

343,913

352,088

Unamortized debt issuance costs

(734)

(787)

Total debt, net

$

343,179

$

351,301

Less: current portion

 

(52,430)

 

(55,659)

Long-term debt, net of current portion

$

290,749

$

295,642

The weighted average interest rate on total debt outstanding at March 31, 2020 and December 31, 2019 was 3.9% and 4.0%, respectively.

Credit Agreement

Our amended and restated credit agreement (“Credit Agreement”) consists of a $220.0 million term loan and a $200.0 million revolving credit facility (“Revolving Credit Facility”), whereby the lenders agreed to make loans on a revolving basis from time to time and to issue letters of credit for up to the $200.0 million committed amount. The Credit Agreement also includes the ability to increase the borrowing capacity thereunder by $75.0 million, subject to obtaining additional or increased lender commitments. The maturity date of the Credit Agreement is July 9, 2023. At March 31, 2020, there were no outstanding borrowings under the Revolving Credit Facility, commercial letters of credit outstanding were $39.5 million, and available borrowing capacity was $160.5 million.

The Credit Agreement contains various restrictive and financial covenants including, among others, a senior debt/EBITDA ratio and debt service coverage requirements. In addition, the Credit Agreement includes restrictions on investments, change of control provisions and provisions in the event we dispose of more than 20% of our total assets. We were in compliance with the covenants for the Credit Agreement at March 31, 2020.

Canadian Credit Facilities

We have a demand credit facility for $4.0 million in Canadian dollars with a Canadian bank for purposes of issuing commercial letters of credit in Canada. At March 31, 2020, commercial letters of credit outstanding were $0.6 million in Canadian dollars, and the available borrowing capacity was $3.4 million in Canadian dollars. The credit facility contains a working capital restrictive covenant for OnQuest Canada, ULC, our wholly owned subsidiary. At March 31, 2020, OnQuest Canada, ULC was in compliance with the covenant.

We have a credit facility for $10.0 million in Canadian dollars with CIBC Bank for working capital purposes in the normal course of business (“Working Capital Credit Facility”). At March 31, 2020, there were no outstanding borrowings under the Working Capital Credit Facility, and available borrowing capacity was $10.0 million in Canadian dollars. The Working Capital Credit Facility contains a cross default restrictive covenant where a default under our Credit Agreement will represent a default in the Working Capital Credit Facility.

XML 35 R12.htm IDEA: XBRL DOCUMENT v3.20.1
Fair Value Measurements
3 Months Ended
Mar. 31, 2020
Fair Value Measurements  
Fair Value Measurements

Note 4—Fair Value Measurements

ASC Topic 820, “Fair Value Measurements and Disclosures”, defines fair value, establishes a framework for measuring fair value in GAAP and requires certain disclosures about fair value measurements. ASC Topic 820 addresses fair value GAAP for financial assets and financial liabilities that are re-measured and reported at fair value at each reporting period and for non-financial assets and liabilities that are re-measured and reported at fair value on a non-recurring basis.

In general, fair values determined by Level 1 inputs use quoted prices (unadjusted) in active markets for identical assets or liabilities. Fair values determined by Level 2 inputs use data points that are observable such as quoted prices, interest rates and yield curves. Fair values determined by Level 3 inputs are “unobservable data points” for the asset or liability and include situations where there is little, if any, market activity for the asset or liability.

The following table presents, for each of the fair value hierarchy levels identified under ASC Topic 820, our financial assets and liabilities that are required to be measured at fair value at March 31, 2020 and December 31, 2019 (in thousands):

Fair Value Measurements at Reporting Date

 

    

    

Significant

    

 

Quoted Prices

Other

Significant

 

in Active Markets

Observable

Unobservable

 

for Identical Assets

Inputs

Inputs

 

    

(Level 1)

    

(Level 2)

    

(Level 3)

 

Assets as of March 31, 2020:

Cash and cash equivalents

$

93,474

 

$

 

$

Contingent consideration

938

Liabilities as of March 31, 2020:

Interest rate swap

$

$

11,414

$

Assets as of December 31, 2019:

Cash and cash equivalents

$

120,286

 

$

 

$

Contingent consideration

938

Liabilities as of December 31, 2019:

Interest rate swap

$

$

6,443

$

Other financial instruments not listed in the table consist of accounts receivable, accounts payable and certain accrued liabilities. These financial instruments generally approximate fair value based on their short-term nature. The carrying value of our long-term debt approximates fair value based on comparison with current prevailing market rates for loans of similar risks and maturities.

In the second quarter of 2019, we sold certain assets that included an earnout of $2.0 million, contingent upon the buyer meeting a certain performance target. The estimated fair value of the contingent consideration on the sale date was approximately $0.9 million. We measured the fair value of the contingent consideration using the income approach, which discounts the future cash payments expected upon meeting the performance target to present value. The fair value of the contingent consideration was impacted by two unobservable inputs, management’s estimate of the probability of meeting the performance target and the estimated discount rate (a rate that approximates our cost of capital). Significant changes in either of those inputs in isolation would result in a different fair value measurement. During the first quarter of 2020, there was no change to the fair value of the contingent consideration.

The interest rate swap is measured at fair value using the income approach, which discounts the future net cash settlements expected under the derivative contracts to a present value. These valuations primarily utilize indirectly observable inputs, including contractual terms, interest rates and yield curves observable at commonly quoted intervals. See Note 9 – “Derivative Instruments” for additional information.

XML 36 R54.htm IDEA: XBRL DOCUMENT v3.20.1
Stock-Based Compensation - Restricted Stock Units (Details) - Equity Plan - USD ($)
$ in Thousands
3 Months Ended 77 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Sep. 30, 2019
Stock-based compensation      
Accrued dividend equivalent units 2,401    
Restricted Stock Units      
Stock-based compensation      
Units granted 607,361    
Number of vested units 260,630    
Number of unvested units 346,731    
Compensation expense recognized $ 500 $ 500  
Unrecognized compensation expense $ 5,400    
Period to recognize unrecognized compensation expense 2 years 4 months 24 days    
Accrued dividend equivalent units 2,401    
Restricted Stock Units | 2020 (remaining nine months)      
Stock-based compensation      
Number of Units to Vest 23,896    
Restricted Stock Units | 2021      
Stock-based compensation      
Number of Units to Vest 179,364    
Restricted Stock Units | 2022      
Stock-based compensation      
Number of Units to Vest 84,415    
Restricted Stock Units | 2023      
Stock-based compensation      
Number of Units to Vest 59,056    
Executives | Restricted Stock Units      
Stock-based compensation      
Units granted     607,361
XML 37 R50.htm IDEA: XBRL DOCUMENT v3.20.1
Credit Arrangements - Narrative (Details)
$ in Thousands, $ in Millions
3 Months Ended
Mar. 31, 2020
USD ($)
Mar. 31, 2020
CAD ($)
Mar. 31, 2020
USD ($)
Dec. 31, 2019
Credit arrangements        
Weighted average interest rate (as a percent)   3.90% 3.90% 4.00%
Credit Agreement        
Credit arrangements        
Potential increase per the agreement $ 75,000      
Available borrowing capacity     $ 160,500  
Credit Agreement | Minimum        
Credit arrangements        
Restrictions on investments, change of control provisions and provisions as a percentage of total assets to be disposed off 20.00%      
Credit Agreement | Revolving Credit Facility        
Credit arrangements        
Maximum borrowing capacity     200,000  
Borrowings outstanding     0  
Credit Agreement | Commercial letters of credit        
Credit arrangements        
Maximum borrowing capacity     200,000  
Letters of credit outstanding     39,500  
Term Loan        
Credit arrangements        
Maximum borrowing capacity     $ 220,000  
Canadian Credit Facility        
Credit arrangements        
Maximum borrowing capacity   $ 4.0    
Available borrowing capacity   3.4    
Canadian Credit Facility | Commercial letters of credit        
Credit arrangements        
Letters of credit outstanding   0.6    
Working Capital Credit Facility        
Credit arrangements        
Maximum borrowing capacity   10.0    
Borrowings outstanding   0.0    
Available borrowing capacity   $ 10.0    
XML 38 R58.htm IDEA: XBRL DOCUMENT v3.20.1
Stockholders' Equity (Details) - USD ($)
$ / shares in Units, $ in Millions
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Feb. 29, 2020
Share repurchase plan      
Aggregate purchase price up to which shares can be acquired under share repurchase program     $ 25.0
Number of shares purchased under share repurchase program 461,831    
Amount paid for shares purchased under share repurchase program $ 7.4    
Amount paid for shares purchased and cancelled under share repurchase program (per share) $ 16.01    
LTR Plan      
Common Stock      
Shares of common stock issued under the long-term incentive plan 34,524 114,106  
Amount received in exchange for shares of common stock under a long term incentive plan $ 0.6 $ 1.8  
Percentage of average market closing prices used in determining number of common stock that could be purchased by participants 75.00% 75.00%  
Equity Plan      
Common Stock      
Shares of common stock issued as a part of quarterly compensation of non-employee members of the Board of Directors 16,744 13,278  
Accrued dividend equivalent units 2,401    
Equity Plan | Restricted Stock Units      
Common Stock      
Granted, Units 607,361    
Accrued dividend equivalent units 2,401    
XML 39 R4.htm IDEA: XBRL DOCUMENT v3.20.1
CONSOLIDATED STATEMENTS OF INCOME - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
CONSOLIDATED STATEMENTS OF INCOME    
Revenue $ 743,243 $ 661,558
Cost of revenue 695,433 609,098
Gross profit 47,810 52,460
Selling, general and administrative expenses 44,388 42,931
Operating income 3,422 9,529
Other income (expense):    
Foreign exchange (loss) gain 136 (185)
Other income (expense), net 12 (370)
Interest income 281 349
Interest expense (9,112) (5,592)
(Loss) income before provision for income taxes (5,261) 3,731
Provision for income taxes 1,527 (795)
Net (loss) income (3,734) 2,936
Less net income attributable to noncontrolling interests (3) (989)
Net (loss) income attributable to Primoris $ (3,737) $ 1,947
Dividends per common share (in dollars per share) $ 0.06 $ 0.06
(Loss) earnings per share:    
Basic (in dollars per share) (0.08) 0.04
Diluted (in dollars per share) $ (0.08) $ 0.04
Weighted average common shares outstanding:    
Basic (in shares) 48,588 50,770
Diluted (in shares) 48,588 51,188
XML 40 R8.htm IDEA: XBRL DOCUMENT v3.20.1
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Cash flows from operating activities:    
Net (loss) income $ (3,734) $ 2,936
Adjustments to reconcile net (loss) income to net cash used in operating activities:    
Depreciation and amortization 19,797 21,700
Stock-based compensation expense 499 487
Gain on sale of property and equipment (2,311) (2,217)
Unrealized loss on interest rate swap 4,970 1,447
Other non-cash items 1,821 80
Changes in assets and liabilities:    
Accounts receivable (13,911) (24,722)
Contract assets (15,682) (2,328)
Other current assets (4,849) (2,231)
Other long-term assets 204 182
Accounts payable 23,934 (59,198)
Contract liabilities (15,389) 2,590
Operating lease assets and liabilities, net 119 (1,447)
Accrued liabilities (179) (9,663)
Other long-term liabilities (756) 288
Net cash used in operating activities (5,467) (72,096)
Cash flows from investing activities:    
Purchase of property and equipment (9,311) (14,377)
Proceeds from sale of property and equipment 6,902 4,398
Net cash used in investing activities (2,409) (9,979)
Cash flows from financing activities:    
Borrowings under revolving line of credit   40,000
Payments on revolving line of credit   (40,000)
Proceeds from issuance of long-term debt 6,800 23,105
Repayment of long-term debt (14,976) (17,170)
Proceeds from issuance of common stock purchased under a long-term incentive plan 578 1,804
Repurchase of common stock (7,393)  
Dividends paid (2,919) (3,043)
Other (1,285) (26)
Net cash (used in) provided by financing activities (19,195) 4,670
Effect of exchange rate changes on cash and cash equivalents 259 327
Net change in cash and cash equivalents (26,812) (77,078)
Cash and cash equivalents at beginning of the year 120,286 151,063
Cash and cash equivalents at end of the year 93,474 73,985
SUPPLEMENTAL DISCLOSURES OF CASH FLOW INFORMATION    
Cash paid for interest 4,061 4,065
Cash paid for income taxes, net of refunds received (369) (707)
Leased assets obtained in exchange for new operating leases 34,711 8,847
SUPPLEMENTAL DISCLOSURES OF NONCASH INVESTING AND FINANCING ACTIVITIES    
Dividends declared and not yet paid $ 2,895 $ 3,051
XML 41 R62.htm IDEA: XBRL DOCUMENT v3.20.1
Reportable Segments (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2020
USD ($)
segment
Mar. 31, 2019
USD ($)
Segment reporting information    
Number of reportable segments | segment 5  
Revenue $ 743,243 $ 661,558
% of Total Revenue 100.00% 100.00%
Gross Profit $ 47,810 $ 52,460
% of Revenue 6.40% 7.90%
Power    
Segment reporting information    
Revenue $ 196,193 $ 145,383
% of Total Revenue 26.40% 22.00%
Gross Profit $ 18,682 $ 20,198
% of Revenue 9.50% 13.90%
Pipeline    
Segment reporting information    
Revenue $ 191,523 $ 134,814
% of Total Revenue 25.80% 20.40%
Gross Profit $ 16,492 $ 15,016
% of Revenue 8.60% 11.10%
Utilities    
Segment reporting information    
Revenue $ 147,170 $ 146,206
% of Total Revenue 19.80% 22.10%
Gross Profit $ 4,602 $ 8,241
% of Revenue 3.10% 5.60%
Transmission    
Segment reporting information    
Revenue $ 102,784 $ 118,443
% of Total Revenue 13.80% 17.90%
Gross Profit $ 1,712 $ 6,628
% of Revenue 1.70% 5.60%
Civil    
Segment reporting information    
Revenue $ 105,573 $ 116,712
% of Total Revenue 14.20% 17.60%
Gross Profit $ 6,322 $ 2,377
% of Revenue 6.00% 2.00%
XML 42 R49.htm IDEA: XBRL DOCUMENT v3.20.1
Credit Arrangements (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Credit arrangements    
Total debt $ 343,913 $ 352,088
Unamortized debt issuance costs (734) (787)
Total debt, net 343,179 351,301
Less: current portion (52,430) (55,659)
Long-term debt, net of current portion 290,749 295,642
Term Loan    
Credit arrangements    
Total debt, net 200,750 203,500
Commercial equipment notes    
Credit arrangements    
Total debt 93,309 105,114
Mortgages    
Credit arrangements    
Total debt, net $ 49,854 $ 43,474
XML 43 R41.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue - Performance obligations (Details)
$ in Millions
3 Months Ended
Mar. 31, 2020
USD ($)
Revenue  
Remaining performance obligations $ 2,080.0
Revenue recognized from performance obligations satisfied in previous periods 3.6
Amount of contract modifications included in the expected contract value. 94.4
Amount of unapproved contract modifications recognized as revenue on a cumulative catch-up basis $ 80.6
XML 44 R45.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue - Disaggregation of revenue by customer type and contract type (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Disaggregation of Revenue    
Revenue $ 743,243 $ 661,558
Fixed price    
Disaggregation of Revenue    
Revenue 217,779 146,285
Unit price    
Disaggregation of Revenue    
Revenue 326,886 259,200
Cost reimbursable    
Disaggregation of Revenue    
Revenue 198,578 256,073
MSA    
Disaggregation of Revenue    
Revenue 270,408 292,879
Non-MSA    
Disaggregation of Revenue    
Revenue 472,835 368,679
Power    
Disaggregation of Revenue    
Revenue 196,193 145,383
Power | Fixed price    
Disaggregation of Revenue    
Revenue 144,850 75,143
Power | Unit price    
Disaggregation of Revenue    
Revenue 181 6,613
Power | Cost reimbursable    
Disaggregation of Revenue    
Revenue 51,162 63,627
Power | MSA    
Disaggregation of Revenue    
Revenue 37,095 49,195
Power | Non-MSA    
Disaggregation of Revenue    
Revenue 159,098 96,188
Pipeline    
Disaggregation of Revenue    
Revenue 191,523 134,814
Pipeline | Fixed price    
Disaggregation of Revenue    
Revenue 15,345 17,227
Pipeline | Unit price    
Disaggregation of Revenue    
Revenue 81,830 374
Pipeline | Cost reimbursable    
Disaggregation of Revenue    
Revenue 94,348 117,213
Pipeline | MSA    
Disaggregation of Revenue    
Revenue 46,732 21,849
Pipeline | Non-MSA    
Disaggregation of Revenue    
Revenue 144,791 112,965
Utilities    
Disaggregation of Revenue    
Revenue 147,170 146,206
Utilities | Fixed price    
Disaggregation of Revenue    
Revenue 24,089 22,767
Utilities | Unit price    
Disaggregation of Revenue    
Revenue 80,639 67,878
Utilities | Cost reimbursable    
Disaggregation of Revenue    
Revenue 42,442 55,561
Utilities | MSA    
Disaggregation of Revenue    
Revenue 104,011 119,462
Utilities | Non-MSA    
Disaggregation of Revenue    
Revenue 43,159 26,744
Transmission    
Disaggregation of Revenue    
Revenue 102,784 118,443
Transmission | Fixed price    
Disaggregation of Revenue    
Revenue 13,636 8,463
Transmission | Unit price    
Disaggregation of Revenue    
Revenue 88,789 105,841
Transmission | Cost reimbursable    
Disaggregation of Revenue    
Revenue 359 4,139
Transmission | MSA    
Disaggregation of Revenue    
Revenue 81,774 101,723
Transmission | Non-MSA    
Disaggregation of Revenue    
Revenue 21,010 16,720
Civil    
Disaggregation of Revenue    
Revenue 105,573 116,712
Civil | Fixed price    
Disaggregation of Revenue    
Revenue 19,859 22,685
Civil | Unit price    
Disaggregation of Revenue    
Revenue 75,447 78,494
Civil | Cost reimbursable    
Disaggregation of Revenue    
Revenue 10,267 15,533
Civil | MSA    
Disaggregation of Revenue    
Revenue 796 650
Civil | Non-MSA    
Disaggregation of Revenue    
Revenue $ 104,777 $ 116,062
XML 45 R24.htm IDEA: XBRL DOCUMENT v3.20.1
Commitments and Contingencies
3 Months Ended
Mar. 31, 2020
Commitments and Contingencies.  
Commitments and Contingencies

Note 16—Commitments and Contingencies

NTTA settlement — On February 7, 2012, we were sued in an action entitled North Texas Tollway Authority (“NTTA”), Plaintiff v. James Construction Group, LLC, and KBR, Inc., Defendants, v. Reinforced Earth Company, Third-Party Defendant (the “Lawsuit”). On February 25, 2015, the Lawsuit was settled, and we recorded a liability for $17.0 million. A second defendant agreed to provide up to $5.4 million to pay for the total expected remediation cost of approximately $22.4 million. We will pay a third-party contractor approved by the NTTA to complete the remediation. In the event that the total remediation costs exceed the $22.4 million, the second defendant would pay 20% of the excess amount and we would pay for 80% of the excess amount. During the three months ended March 31, 2020, we increased our estimate of the total expected remediation costs by $0.5 million. We also spent $2.5 million for remediation during the three months ended March 31, 2020. While we continue to monitor the progress toward remediation and the total remediation costs, at this time we cannot determine the total eventual remediation cost. At March 31, 2020, the remaining accrual balance was $6.5 million.

Legal proceedings — We had been engaged in dispute resolution to collect money we believe we were owed for a construction project completed in 2014. The dispute resolution for the receivable initially required international arbitration; however, in the first half of 2016, the owner sought bankruptcy protection in U.S. bankruptcy court. We initiated litigation against the sureties who had provided lien and stop payment release bonds for the amount owed. During 2018, we settled with the sureties. In addition, we believe we are owed amounts from the bankruptcy trustee. We expect that we will collect a portion of the amount owed to us but cannot predict the timing of such collection.

We are subject to other claims and legal proceedings arising out of our business. We provide for costs related to contingencies when a loss from such claims is probable and the amount is reasonably estimable. In determining whether it is possible to provide an estimate of loss, or range of possible loss, we review and evaluate our litigation and regulatory matters on a quarterly basis in light of potentially relevant factual and legal developments. If we determine an unfavorable outcome is not probable or probable but not reasonably estimable, we do not accrue for a potential litigation loss.

Management is unable to ascertain the ultimate outcome of other claims and legal proceedings; however, after review and consultation with counsel and taking into consideration relevant insurance coverage and related deductibles/self-insurance retention, management believes that it has meritorious defenses to such claims and believes that the reasonably possible outcome of such claims will not, individually or in the aggregate, have a material adverse effect on our consolidated results of operations, financial condition or cash flow.

Bonding — At March 31, 2020 and December 31, 2019, the Company had bid and completion bonds issued and outstanding totaling approximately $829.0 million and $648.6 million, respectively.

XML 46 R20.htm IDEA: XBRL DOCUMENT v3.20.1
Income Taxes
3 Months Ended
Mar. 31, 2020
Income Taxes  
Income Taxes

Note 12—Income Taxes

We are subject to tax liabilities imposed by multiple jurisdictions. We determine our best estimate of the annual effective tax rate at each interim period using expected annual pre-tax earnings, statutory tax rates, and available tax planning opportunities. Certain significant or unusual items are separately recognized in the quarter in which they occur

which can cause variability in the effective tax rate from quarter to quarter. We recognize interest and penalties related to uncertain tax positions, if any, as an income tax expense.

We do not include the income tax expense or benefit related to the net earnings or loss attributable to noncontrolling interest in our income tax expense as the entities are considered pass-through entities and, as such, the income tax expense or benefit is attributable to its owners. The effective tax rate on income including noncontrolling interests for the three months ended March 31, 2020 and 2019 was 29.0% and 21.3%, respectively. Excluding noncontrolling interest, the effective tax rate on (loss) income attributable to Primoris for the three months ended March 31, 2020 and 2019 was 29.0%. For the first three months of 2020 and 2019, our tax rate differs from the U.S. federal statutory rate of 21.0% primarily due to the impact of state income taxes and nondeductible components of per diem expenses.

Our U.S. federal income tax returns are generally no longer subject to examination for tax years before 2016. The statutes of limitation of state and foreign jurisdictions generally vary between 3 to 5 years. Accordingly, our state and foreign income tax returns are generally no longer subject to examination for tax years before 2014.

Income taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for temporary differences between the financial reporting bases and tax bases of assets and liabilities based on enacted tax rates expected to be in effect when such amounts are realized or settled. However, deferred tax assets are recognized only to the extent that it is more likely than not that they will be realized based upon consideration of available evidence, including future reversals of existing taxable temporary differences, future projected taxable income, the length of the tax asset carryforward periods, and tax planning strategies. The effects of remeasurement of deferred tax assets and liabilities resulting from changes in tax rates are recognized in income in the period of enactment.

On March 27, 2020, the Coronavirus Aid, Relief, and Economic Security Act (CARES Act) was enacted by the US Government in response to the COVID-19 pandemic. Similarly, the Canada Emergency Wage Subsidy legislation was enacted on April 11, 2020 to provide employment retention incentives to certain Canadian employers. These relief measures did not materially affect the Consolidated Financial Statements for the first quarter of 2020. We are currently assessing the future implications of these provisions on our Consolidated Financial Statements.

XML 47 R28.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue (Tables)
3 Months Ended
Mar. 31, 2020
Revenue  
Schedule of contract assets

Contract assets consist of the following (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Unbilled revenue

$

268,282

$

251,429

Retention receivable

78,216

81,393

Contract materials (not yet installed)

 

12,872

 

11,984

$

359,370

$

344,806

Schedule of contract liabilities

Contract liabilities consist of the following (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Deferred revenue

$

171,553

$

186,081

Accrued loss provision

 

5,294

 

6,316

$

176,847

$

192,397

Schedule of revenue disaggregation by various categories

Master Service Agreements (“MSA”) and Non-MSA revenue was as follows (in thousands):

For the three months ended March 31, 2020

 

Segment

MSA

Non-MSA

Total

Power

$

37,095

159,098

196,193

Pipeline

46,732

144,791

191,523

Utilities

 

104,011

43,159

147,170

Transmission

81,774

21,010

102,784

Civil

 

796

104,777

105,573

Total

$

270,408

 

$

472,835

 

$

743,243

For the three months ended March 31, 2019

 

Segment

MSA

Non-MSA

Total

Power

$

49,195

 

$

96,188

 

$

145,383

Pipeline

21,849

112,965

134,814

Utilities

 

119,462

 

 

26,744

 

 

146,206

Transmission

101,723

16,720

118,443

Civil

 

650

 

 

116,062

 

 

116,712

Total

$

292,879

 

$

368,679

 

$

661,558

Revenue by contract type was as follows (in thousands):

For the three months ended March 31, 2020

 

Segment

Fixed-price

Unit-price

Cost reimbursable (1)

Total

Power

$

144,850

181

51,162

196,193

Pipeline

15,345

81,830

94,348

191,523

Utilities

 

24,089

80,639

42,442

147,170

Transmission

13,636

88,789

359

102,784

Civil

 

19,859

75,447

10,267

105,573

Total

$

217,779

 

$

326,886

 

$

198,578

 

$

743,243

(1)Includes time and material and cost reimbursable plus fee contracts.

For the three months ended March 31, 2019

 

Segment

Fixed-price

Unit-price

Cost reimbursable (1)

Total

Power

$

75,143

 

$

6,613

 

$

63,627

 

$

145,383

Pipeline

17,227

374

117,213

134,814

Utilities

 

22,767

 

 

67,878

 

 

55,561

 

 

146,206

Transmission

8,463

105,841

4,139

118,443

Civil

 

22,685

 

 

78,494

 

 

15,533

 

 

116,712

Total

$

146,285

 

$

259,200

 

$

256,073

 

$

661,558

(1)Includes time and material and cost reimbursable plus fee contracts.

XML 48 FilingSummary.xml IDEA: XBRL DOCUMENT 3.20.1 html 202 335 1 false 59 0 false 9 false false R1.htm 00090 - Document - Document and Entity Information Sheet http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 00100 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheetsParenthetical CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME Sheet http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome CONSOLIDATED STATEMENTS OF INCOME Statements 4 false false R5.htm 00300 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE (LOSS) INCOME Sheet http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome CONSOLIDATED STATEMENTS OF COMPREHENSIVE (LOSS) INCOME Statements 5 false false R6.htm 00400 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Sheet http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Statements 6 false false R7.htm 00405 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical) Sheet http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquityParenthetical CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical) Statements 7 false false R8.htm 00500 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 8 false false R9.htm 10101 - Disclosure - Nature of Business Sheet http://www.primoriscorp.com/role/DisclosureNatureOfBusiness Nature of Business Notes 9 false false R10.htm 10201 - Disclosure - Basis of Presentation Sheet http://www.primoriscorp.com/role/DisclosureBasisOfPresentation Basis of Presentation Notes 10 false false R11.htm 10301 - Disclosure - Recent Accounting Pronouncements Sheet http://www.primoriscorp.com/role/DisclosureRecentAccountingPronouncements Recent Accounting Pronouncements Notes 11 false false R12.htm 10401 - Disclosure - Fair Value Measurements Sheet http://www.primoriscorp.com/role/DisclosureFairValueMeasurements Fair Value Measurements Notes 12 false false R13.htm 10501 - Disclosure - Revenue Sheet http://www.primoriscorp.com/role/DisclosureRevenue Revenue Notes 13 false false R14.htm 10601 - Disclosure - Goodwill and Intangible Assets Sheet http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssets Goodwill and Intangible Assets Notes 14 false false R15.htm 10701 - Disclosure - Accounts Payable and Accrued Liabilities Sheet http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilities Accounts Payable and Accrued Liabilities Notes 15 false false R16.htm 10801 - Disclosure - Credit Arrangements Sheet http://www.primoriscorp.com/role/DisclosureCreditArrangements Credit Arrangements Notes 16 false false R17.htm 10901 - Disclosure - Derivative Instruments Sheet http://www.primoriscorp.com/role/DisclosureDerivativeInstruments Derivative Instruments Notes 17 false false R18.htm 11001 - Disclosure - Noncontrolling Interests Sheet http://www.primoriscorp.com/role/DisclosureNoncontrollingInterests Noncontrolling Interests Notes 18 false false R19.htm 11101 - Disclosure - Stock-Based Compensation Sheet http://www.primoriscorp.com/role/DisclosureStockBasedCompensation Stock-Based Compensation Notes 19 false false R20.htm 11201 - Disclosure - Income Taxes Sheet http://www.primoriscorp.com/role/DisclosureIncomeTaxes Income Taxes Notes 20 false false R21.htm 11301 - Disclosure - Dividends and Earnings Per Share Sheet http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShare Dividends and Earnings Per Share Notes 21 false false R22.htm 11401 - Disclosure - Stockholders' Equity Sheet http://www.primoriscorp.com/role/DisclosureStockholdersEquity Stockholders' Equity Notes 22 false false R23.htm 11501 - Disclosure - Leases Sheet http://www.primoriscorp.com/role/DisclosureLeases Leases Notes 23 false false R24.htm 11601 - Disclosure - Commitments and Contingencies Sheet http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingencies Commitments and Contingencies Notes 24 false false R25.htm 11701 - Disclosure - Reportable Segments Sheet http://www.primoriscorp.com/role/DisclosureReportableSegments Reportable Segments Notes 25 false false R26.htm 11801 - Disclosure - Subsequent Event Sheet http://www.primoriscorp.com/role/DisclosureSubsequentEvent Subsequent Event Notes 26 false false R27.htm 30403 - Disclosure - Fair Value Measurements (Tables) Sheet http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsTables Fair Value Measurements (Tables) Tables http://www.primoriscorp.com/role/DisclosureFairValueMeasurements 27 false false R28.htm 30503 - Disclosure - Revenue (Tables) Sheet http://www.primoriscorp.com/role/DisclosureRevenueTables Revenue (Tables) Tables http://www.primoriscorp.com/role/DisclosureRevenue 28 false false R29.htm 30603 - Disclosure - Goodwill and Intangible Assets (Tables) Sheet http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsTables Goodwill and Intangible Assets (Tables) Tables http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssets 29 false false R30.htm 30703 - Disclosure - Accounts Payable and Accrued Liabilities (Tables) Sheet http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables Accounts Payable and Accrued Liabilities (Tables) Tables http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilities 30 false false R31.htm 30803 - Disclosure - Credit Arrangements (Tables) Sheet http://www.primoriscorp.com/role/DisclosureCreditArrangementsTables Credit Arrangements (Tables) Tables http://www.primoriscorp.com/role/DisclosureCreditArrangements 31 false false R32.htm 30903 - Disclosure - Derivative Instruments (Tables) Sheet http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsTables Derivative Instruments (Tables) Tables http://www.primoriscorp.com/role/DisclosureDerivativeInstruments 32 false false R33.htm 31003 - Disclosure - Noncontrolling Interests (Tables) Sheet http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsTables Noncontrolling Interests (Tables) Tables http://www.primoriscorp.com/role/DisclosureNoncontrollingInterests 33 false false R34.htm 31103 - Disclosure - Stock-Based Compensation (Tables) Sheet http://www.primoriscorp.com/role/DisclosureStockBasedCompensationTables Stock-Based Compensation (Tables) Tables http://www.primoriscorp.com/role/DisclosureStockBasedCompensation 34 false false R35.htm 31303 - Disclosure - Dividends and Earnings Per Share (Tables) Sheet http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareTables Dividends and Earnings Per Share (Tables) Tables http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShare 35 false false R36.htm 31503 - Disclosure - Leases (Tables) Sheet http://www.primoriscorp.com/role/DisclosureLeasesTables Leases (Tables) Tables http://www.primoriscorp.com/role/DisclosureLeases 36 false false R37.htm 31703 - Disclosure - Reportable Segments (Tables) Sheet http://www.primoriscorp.com/role/DisclosureReportableSegmentsTables Reportable Segments (Tables) Tables http://www.primoriscorp.com/role/DisclosureReportableSegments 37 false false R38.htm 40101 - Disclosure - Nature of Business (Details) Sheet http://www.primoriscorp.com/role/DisclosureNatureOfBusinessDetails Nature of Business (Details) Details http://www.primoriscorp.com/role/DisclosureNatureOfBusiness 38 false false R39.htm 40201 - Disclosure - Basis of Presentation (Details) Sheet http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails Basis of Presentation (Details) Details http://www.primoriscorp.com/role/DisclosureBasisOfPresentation 39 false false R40.htm 40401 - Disclosure - Fair Value Measurements (Details) Sheet http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails Fair Value Measurements (Details) Details http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsTables 40 false false R41.htm 40501 - Disclosure - Revenue - Performance obligations (Details) Sheet http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligationsDetails Revenue - Performance obligations (Details) Details 41 false false R42.htm 40502 - Disclosure - Revenue - Performance obligations - 2020 (Details) Sheet http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligations2020Details Revenue - Performance obligations - 2020 (Details) Details 42 false false R43.htm 40503 - Disclosure - Revenue - Contract assets (Details) Sheet http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails Revenue - Contract assets (Details) Details 43 false false R44.htm 40504 - Disclosure - Revenue - Contract liabilities (Details) Sheet http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails Revenue - Contract liabilities (Details) Details 44 false false R45.htm 40505 - Disclosure - Revenue - Disaggregation of revenue by customer type and contract type (Details) Sheet http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails Revenue - Disaggregation of revenue by customer type and contract type (Details) Details 45 false false R46.htm 40601 - Disclosure - Goodwill and Intangible Assets - Goodwill (Details) Sheet http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails Goodwill and Intangible Assets - Goodwill (Details) Details 46 false false R47.htm 40602 - Disclosure - Goodwill and Intangible Assets - Intangible Assets (Details) Sheet http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails Goodwill and Intangible Assets - Intangible Assets (Details) Details 47 false false R48.htm 40701 - Disclosure - Accounts Payable and Accrued Liabilities (Details) Sheet http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails Accounts Payable and Accrued Liabilities (Details) Details http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables 48 false false R49.htm 40801 - Disclosure - Credit Arrangements (Details) Sheet http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails Credit Arrangements (Details) Details http://www.primoriscorp.com/role/DisclosureCreditArrangementsTables 49 false false R50.htm 40802 - Disclosure - Credit Arrangements - Narrative (Details) Sheet http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails Credit Arrangements - Narrative (Details) Details 50 false false R51.htm 40901 - Disclosure - Derivative Instruments (Details) Sheet http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails Derivative Instruments (Details) Details http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsTables 51 false false R52.htm 40902 - Disclosure - Derivative Instruments - Derivative contract and instruments (Details) Sheet http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails Derivative Instruments - Derivative contract and instruments (Details) Details 52 false false R53.htm 41001 - Disclosure - Noncontrolling Interests (Details) Sheet http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails Noncontrolling Interests (Details) Details http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsTables 53 false false R54.htm 41101 - Disclosure - Stock-Based Compensation - Restricted Stock Units (Details) Sheet http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails Stock-Based Compensation - Restricted Stock Units (Details) Details 54 false false R55.htm 41201 - Disclosure - Income Taxes (Details) Sheet http://www.primoriscorp.com/role/DisclosureIncomeTaxesDetails Income Taxes (Details) Details http://www.primoriscorp.com/role/DisclosureIncomeTaxes 55 false false R56.htm 41301 - Disclosure - Dividends and Earnings Per Share (Details) Sheet http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails Dividends and Earnings Per Share (Details) Details http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareTables 56 false false R57.htm 41302 - Disclosure - Dividends and Earnings Per Share - Anti-dilutive shares (Details) Sheet http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareAntiDilutiveSharesDetails Dividends and Earnings Per Share - Anti-dilutive shares (Details) Details 57 false false R58.htm 41401 - Disclosure - Stockholders' Equity (Details) Sheet http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails Stockholders' Equity (Details) Details http://www.primoriscorp.com/role/DisclosureStockholdersEquity 58 false false R59.htm 41501 - Disclosure - Leases - Components of Lease Expense and Operating Lease Liabilities (Details) Sheet http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails Leases - Components of Lease Expense and Operating Lease Liabilities (Details) Details 59 false false R60.htm 41502 - Disclosure - Leases - Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details) Sheet http://www.primoriscorp.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails Leases - Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details) Details 60 false false R61.htm 41601 - Disclosure - Commitments and Contingencies - Legal (Details) Sheet http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails Commitments and Contingencies - Legal (Details) Details 61 false false R62.htm 41701 - Disclosure - Reportable Segments (Details) Sheet http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails Reportable Segments (Details) Details http://www.primoriscorp.com/role/DisclosureReportableSegmentsTables 62 false false R63.htm 41702 - Disclosure - Reportable Segments - Revenue and Total Assets by Geographic Area (Details) Sheet http://www.primoriscorp.com/role/DisclosureReportableSegmentsRevenueAndTotalAssetsByGeographicAreaDetails Reportable Segments - Revenue and Total Assets by Geographic Area (Details) Details 63 false false R64.htm 41801 - Disclosure - Subsequent Events (Details) Sheet http://www.primoriscorp.com/role/DisclosureSubsequentEventsDetails Subsequent Events (Details) Details http://www.primoriscorp.com/role/DisclosureSubsequentEvent 64 false false All Reports Book All Reports prim-20200504x10q.htm prim-20200331xex31d1.htm prim-20200331xex31d2.htm prim-20200331xex32d1.htm prim-20200331xex32d2.htm prim-20200504.xsd prim-20200504_cal.xml prim-20200504_def.xml prim-20200504_lab.xml prim-20200504_pre.xml http://fasb.org/us-gaap/2019-01-31 http://xbrl.sec.gov/dei/2019-01-31 http://fasb.org/srt/2019-01-31 true true XML 49 R18.htm IDEA: XBRL DOCUMENT v3.20.1
Noncontrolling Interests
3 Months Ended
Mar. 31, 2020
Noncontrolling Interests  
Noncontrolling Interests

Note 10 — Noncontrolling Interests

We own a 50% interest in the Carlsbad joint venture which operates in the Power segment. The joint venture has been determined to be a VIE and we were determined to be the primary beneficiary as a result of our significant influence over the joint venture operations.

The joint venture is a partnership, and consequently, only the tax effect of our share of the income was recognized by us. The net assets of the joint venture are restricted for use by the specific project and are not available for our general operations.

The Carlsbad joint venture’s operating activities began in 2015 and are included in our Condensed Consolidated Statements of Operations as follows (in thousands):

Three Months Ended March 31, 

    

2020

    

2019

 

Revenue

$

$

4,024

Net income attributable to noncontrolling interests

3

989

The Carlsbad joint venture made no distributions to the partners and we made no capital contributions to the Carlsbad joint venture during the three months ended March 31, 2020 and 2019. The project was substantially complete as of December 31, 2018 and the warranty period expires in December 2020.

The following table summarizes the total balance sheet amounts for the Carlsbad joint venture, which is included in our Condensed Consolidated Balance Sheets, and the total consolidated balance sheet amounts (in thousands):

Joint Venture

Consolidated

At March 31, 2020

    

Amounts

    

Amounts

 

Cash

$

2,026

$

93,474

Accounts receivable

416,412

Contract assets

359,370

Due from Primoris

476

Accounts payable

258,962

Contract liabilities

434

176,847

At December 31, 2019

Cash

$

2,124

$

120,286

Accounts receivable

404,911

Contract assets

344,806

Accounts payable

38

235,972

Contract liabilities

425

192,397

ZIP 50 0001558370-20-005056-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-20-005056-xbrl.zip M4$L#!!0 ( *>.I%""R@[Q)0D +E, 8 <')I;2TR,#(P,#,S,7AE M>#,Q9#$N:'1M[9QK;]LV%\=?MT"_ Q\7&Q+ %\EVVD9V Z2IBP5HFBQQ@>W5 M0$N41802-5*RXWWZYQQ2\J6V4Z=)NS13BR22>#NDR)__YU!6_W^-QF_#LX\D MD'X>LR0COF(T8P&9\BPB0YFF-"%G3"DN!'FG>#!FA!PV7S6=INN^:C2.7CSO M0QTG12F9>.2@U6VUG;9#.MZ!ZSD.N3BS^:(L%O#W63]B-,"#9_V,9X*9PV>I MXO%?@YN.^Y=KDEKSM'ZK+- ?R6!VU _XA.AL)MC;6DS5F"<-P<+,ZS:[KOOZ M5?>U<_#F3;MS\$NO2%5\'&U*KAWU6U#70U9H3$]7*_.<-.ME["9K4,''B6=* M]P1/6"-BIB;7<7[IA3+)&B&-N9AY0QXS33ZQ*;F4,4WJYKRNF>*AS:?Y/\PC M+M9L&WW6Q^MEPP'7J: SCR?8C"TRM6V-I B@S. FXB.>_9J,=-KKN$VWW\)< MM@.M='M'?J3=M2-KWZZV+0VR#Y.9J7][E"\_?QP0MT,;;G>/[K?<@\ >V6Z= M#"Z'IQ].3XZ'I^>?R,7GRZO/QY^&9'C^T_;W:G""?2EFE=,FYQ_(\+4,/-M!+-Z]H9'70'_;FFB:A(>(VEV[;XKZ5X[,R"F\V#C)> M71S=.MHK [P\]#]P5&^;R;X44GDO'?,/ER2)Z(01Q2:<34$+91'7Y/><*N"R MF)%+EDJ5@4(B'V"QVD7@.HW?22@5Y&4D!9MD0%@20.$SJOR(=-PZ02E5)S:_ M#,D%R"2IH.8KIB;::<9E4JZJQ3BV< &TS (JQ$Y%@8H"]Z- NZ+ M=@J\H]KX022>D>M$3@4#EZF^!0:!!*L2"5X7-$!Y0F@R(WF2J1PG.GA4QB6# M54])#&>*4T%"ZL,E163,,Y))FV\M0\( #9JJ&6:)Z34SB)G7J>%: &9!DP)' M#-O ##Y7X ="M@3)D@.*%)E&'%"D<_RU*#]EBA658 =BK@4X:;#BK.>HF$Z9 M;PQ<8ILO)U L(*/9Y@&I^%7QZ_OSJU/QZQOXQ4C($^ "(F;!@3H@"[)#LEI* MYPF(FMA($CCV18Z2!EBS<='7@5@<3U. !O(..2C$ F@%2_071@ S XY-U#%' M+B #4$P":DS#VECF4QV14,BI+A&GV)CK3%%HB.)%VP.PM[Y$*ET:Q"#G0E?4JP.T,N(/NQK5G+C\(X-J=)PJX/;J_ M.^':FS]&YH1K/S7"O6<:3(0%;OROKW.HCJZA3W.]>Q'TT48,2%*T9+T^F2NH M(,4@DS8:"W*QQ-2#L>6%.EO6>HH):M!4N'T+J-0+'8B)')0:V**EX('9-=3Y M2/. 4\6Q ]PZIT9])EA3KM%A-$S7QKLTBDQJ!@9EH "Q4 K:C/NYH*C/H%O& MB(7C"26L&[O9#X=K(X9%0/5!32RXC[8CY<_KP^9AN4G#85"3S".-]D&S7>&Q MPN/.>!Q5>-P5CSM+IS5*[BZZ=H8E ';" V0@U3(QRXEJX">&UA",5 4EI "; MG(ZXX-D,O=1-S2*R#<\,H"QM5[(NA>:,G+TI.I3F*@54:N-5^[Y4@3' !.G& M+ %G60 '(86EB&+,DB>992$@FZ>@(RL:5C1\)#3T*QINI^$ ;,R-HD)4L#!D M?L8GL,CUANC7PEO>02+:TZ]%Q P'H0H0>MI&X$8RS[8;LXN.A M@RM]/U=(ER5O/>"UDM["-Y@'/I-)S+]1<@#KCF&<98[>)RY$$1QK?8A*A57[$/\NMHZ%(!CRX@ E MW"/$?4>?,Z!(X1W.]P.FC%ZCDV=#3L;-,\$R\\Q:^7#&G=A4A.[MKNT&M40# M**C97"QMYU@18X,RP"*I@*/&U=3@9^H\AA&"X3*]L6UO?J*ES^62E3F\.C:\ HBPZ CXSU8 [*FBJF5<>]$KWR7&: MMEYK+(Q3L>J^Q,(J4FRIHG9(]UQ <2(31EZ^/\3_I$PTWP'=FCJ262;C[>GV M.Z+KR<4-ZC8["+=B(%:P\B]L^/HW_RR'3)F5 MN5#.@P)"U4UYK#?%L.5;%L\/&)\M2/HJE=X#UCW;JQDG@0-*ZC(2YIG\C&/5DNW-GTA MNIH@3VS=5_?XJ=]C6PJ3/)Y!+WPH=Z&8YA@@J9.3B+.0#&Z8G^/C!.1\*4S^ MO@@Q5S/BR<^(O0O[=!HXSVMS8;^Z_T4(Z">)&GRGMS =%:: B6]K;NV(+ =7 MM@0V7SS?.%#M[B)N^[W?NK/#*"Y>UK0(O+QX7@SCPPYF2L>L,5*,7C=H"'WU MZ$1R?-7/<@MK@K&,P/F"4>6!THQ*CQ=#C%: >DX9W.N4$?'RH#=_,UV<:V_;.!:&/[= _P/'Q0P2P#?YTC2*&R!- M74PP39-)W,7NIP$M41812M20DAWOK]]S2,F7VD[<5[7:Z8OG/:CC/"\E8Y=T&YU&J]EJDK;;==RF0ZXO;;XPC03\?=8+&?7Q MXEDOY:E@YO)9HGCT5_^^[?S5,DF-65JO413H#:4_/>WY?$QT.A7L326B:L3C MFF!!ZG;J'<M4Y:G9?OVZUN[^>Y*F*C\)UR9737@/JVF6%QO1DN3*WF:0G M*;M/:U3P4>R:TB>"QZP6,E.3TVS^>A+(.*T%-.)BZ@YXQ#3YR";D1D8TKIK7 M5+!BFOFM/*J?6XA_#VC7C?O/I0Y\X;5IS.@?T ML.%T?7MENW7>OQED\&O_?)[=G-V[./_=O:U;\_]/]#SLX'D&)SM9K-K5?C/J^][VO;197\P>*8 M ;8OZ^2=!%+'5>(QE?)@2M*0INY^&KYY4!>P/.%^&AIC -HI'0JVFG)2@>X* MD5#?Y_'H3:5I7^N$>OEK**K@QU\NVSHRILZ'8N'VO$>V/V@;O#7YII:QV6AO M*JE,*B2_QC>.RG)%Q#FN-Q>'8];0S@9Z8?+R1I8'?;>3:YJ$AHA37YBV^;P5 MX[,T"J_7#C+>G5\].-I+ [PX]-]Q5!]:R9X44KDOF^8?;D@2TC$CBHTYFX V M2D.NR9\954!E,24W+)$J!<5$WDL5V4W@-&M_DD JR,M( C9)G[#8A\*75'DA M:3M5@M*J2F1 KD$P205UWC(UYA[TZEPJJ).F7,;%?IJ/8 .7?L-LG5SV;-K_ MI/CI=NI'Q7L*!S/BU"6UUE&]W2TA44)B6TBT2DALAL1;JHW;1*(IN8OE1#!X MWZYN8(4OP:I8@I, >$QI/21:G*L.%#@Z8\> #91$\$IQ*DA /;BEB(QX M2E)I\ZUDB!GP0U,UQ2P1O6.&0+,Z-=SSP2QH4N"(81N8P>,*W$;(%B-^,D"$ M(I.0 ZETAK_FY2=,L;P2[$#$M0"?#G:<=305TPGSC($+Z//D&(KY9#A=/R E MY$K([0GDVB7DO@)RC 0\!G@@A^:PJ +7(#LDJX5T'H,PBHRX@6M/9"B+ $AK MR5 %K'%\F0!9$(H(2R'FU,N!HS\S L#JZQ"S8[8(E!VJ M.WP-9GA"Z@S*H>934E@$)4IZS(?;FAP <7P&"+-8Z=][(8U'C)R!G+K)!-.Y M:XDAQ^X!RP.-6(F)/>*M0U,GQW!A;"&(+1%47PML5(90:-67-1FL-AE DX6; MN\A.R($^L_L-%/S9 -?MK-U[YO9. -=J/U' '=##[0G76O\V,B-DO4?9::@@@1C6MH(,C:&I8 V#'W MD8%4R]AL)ZJ!GQBD0S!2Y1>0 FQR.N2"IU-T9=OM>5+YQ@ 3[ANQ&#QJ 1R$%)8@BC%+%J>6A8!LGH".+&E8 MTG!/:.B5--Q,PS[8F!E%A:A@0<"\E(]AD^LU(;*YM[R%1+0O'PN;&0Y"%2#T MM W3#666;C9F&SE+9[D91B.#+SF8(,,BXFD@S^SPX+$L-E-"K83:?D#-+Z'V M@,2SD'@(.WC^FL>^3)[UF/L"C8<.KO2\3"%=%KS)==5&4J>0@(_Y067:@YK^ MM@;:>D*J9\XR*BT#0N8;"0J=FS_-5O[]6W,N]GXUEY9/&U M/.N61Q8[/[(PS[#Y!0JK.WJ< 45R[W!V'C!A] Z=/!MR,FZ> M"9:9I]^*)SB^B$UYZ-Z>VJY12]2'@IK-Q-)FCN4Q-B@#+)(*.&I<30U^ILXB M&"$8+M,;V_;ZQUY*Y['$UAYAJSP?> A;X!D&"N1*%2#"C,0"#)E'7W->5:V7 MQN.Q%&.&KEI,1_D3O"I792Q*A)PR2)V$TDHQND1#H-=N7,_ZDY4Z)S-H/ *( MHN@0^,Q4#694T$0SM[@X*=RG9K-NZ[7&PCCEN^YS+"PCQ9;*:X=TUP$4QS)F MY.6[8_Q/BD3SX=.-J4.9IC+:G&X_G+J:7$R0Y5$^$$O8V/'L+C>(*P\?FG1# M[L-;SLIVSTUX_/.%%D.FS-)2*)9!SJ!R3O9T3@Q9OF;K?(?AV0"D1YGT#J#N MVIZ32SHE'?LYK6]>F7ON'A(PWWS,OPN0'R M+^XQ_)@ZN[9-I,.DKTW]8SG\>_OE! M(@;_T%<_G>:F@(EO*D[EE"P&5C8$-5\\7SM0KE8M M_'2;16"O743#BXN3V=>!%6NWUS#?-X:=--]=]C]02P,$% @ IXZD4+/= M&!]6!0 ;AX !@ !P&5X,S)D,2YH=&WM66UOVS80 M_IP"^P\W!RT2P)(EV4YJV0FP.1U6K%G3-OM+]^1U)*[:1Y MP9!F:9HT12B=CKR7Y]ZDR<]!\/OQX3N@*EN43!K(-".&43CCIH!C555$PB'3 MF@L!OVI.YPQ@%.Z$41C'.T&P_].+">XQ;;B43&'8&_22*(F@GP[C-$K@Z- _ M5YA2X-^-2<$(M8N-B>%&,+??8T?J7= FO99A,E-TN3^A_!1J MLQ1LKU,2/>?(W\Y+5\"<[@X^J M)++KKKLUTSSWS]7\'Y9";'?VAVY,[/WV8,KK2I!ERJ4]QK.<^;-F2E#D>7-> M\!DWK^2LKL;])(PG/?N45Z!77:_(0\K=V??RW56V%2-G"&:F_V\K3YDV/.<9 M,5Q).%KH>D&0WRCXQ#)[S^LWBG:^6Q55#J9@\(GH&9&L#MZ?"[:$7S(#2$DB MC/^M^#7\%7X*I^&ZUG%_&&T_&=AQ2=$?:7_GP85]*R%34GK3^L1M/?)A033B M0RSA(ZN4=OXXPB2K-*_1$?J49RC'5&DD>GQN6;97F^=)%$_'4U5B[E_ZRX/Q M-N9V^$WILO%=%'R 7&EW4H6R*PH,+4#AD.BL@'[$\QI=R-;U0KWMP@$Y MY13>A? 'E_,N3 O.=4-8PZWAT44Z,5W+7"[A1*HS--:5995S2S?:A=AKRM"*0+2&249?K&,:T&<+=L_MR5?)UQ_C?-&A8\1 M?$W\YPN!R2!#S L;>Q?QJ-G?"ZZ9;?]JB\I+:-\BVWZ)T1X/MVA[E5\.YHM M;M =C_J#L0WQ9RA_"_F3'Q'*7&+1*7VYPJ)G")(HWG58;'%.N*UZE6:UA737 MD@F.+\B&&A*!@*\KQ'C==5PYET1F]CYN2+G;VM8E?&HA?$0HK'#NS/I2Y0B? M +0?0?N"J0AK(Z8D7^N]7Q8HD:ZQT44'%UANF:OB>&&=0YG >J[QRA38SF07 M?3:SE;EQDFL?:F9LHX*Y#H=957/;42"'W9B8A68P8T*=?7>.7!E9SS@UA1<& M(\F0F6!H$"&:2-WK1!UW75F&- M]@M<43AU8\A>QZBJLR[+$+EP'&YV1WH:8Y*02C+8/!C9?] 2_:!]'76FC%'E M]?1F$+]";AV$PJ^GK%:3^_;N^H$*H9DCJM*"4PRK%=^OB7#[J.5X8L>S!H46 M!NX]";V33P:C<)0\^^1A?8(K_9]"YP', GO?M" MY@J\:B5PF-N,W _BBV0G8X2U8X3%[!PO9=_(\+V[\W'Z8>\Q3RC3Z=M>\ 4,2]3MS9AQ6K M?7WHL9Q?-50R6'D[\8V_F]SEU>.% ;\,.I% U %U304 (H> 8 <')I;2TR M,#(P,#,S,7AE>#,R9#(N:'1M[5GK;]LV$/^< OT?;@Y:)( E2_(CB>P$6)T4 M*[:L:9OM:T%+E$6$(C6*CN/]]3N2DFLGS6-#FJ5I\H!)GXZ\Q^\>I$8_>=XO MI\>_02J364&%AD11HFD*F&X M,^CM!/W=W5?#FJK8-/\:N74PZN!:][F@%;U<7RP.2CW4]$)[A+.IB"WWD#-! MO9S6*P6OAID4VLM(P?@B/F4%K>!W.H>/LB"B;>?MBBJ6N>-(30KNTTW M1N;[9N.4524GBY@)LXUCF;N])I*GR'-TD;,)TZ_%I"J'W9_9^#W+T41>%%DOWQ8^4/_ M)OJ5->\JRZIFAF^UQS#SDJ0I$U-KE'#PQ3*V0;&V;#YN2\U6N.X:YXT*GR+X MZNR0S3BFB@0QSTUD+J-5T;]F3%'3'%8&E9?0OD6VW1!S0=C?2IM9=CG4EV%> MHSO.7#G0SEFJ8UZT0J-+*72,Y)6=&X&0S=FBAIX+MUG;!:N0&. M4CBWAY3]EI9E:UV6WL#O(E>].M+C$).$D(+"YN&>^86&Z([AUU$G4FM97$^O MC^E7R(V#4/CUE-5H7=]0(C0S1%6R2?]KK_S[),']@F.U'\*G0P8K6O'WD,YU<-%?56[B:^\3N5NUP\+@WXY1CW\D5M MQOLU9DFFU)LH2LX\DJ&N,3F7S+S(6=WA2C-5MUG#A%.B8NS"\J:!CE!+UYS% M0;UWW&WNPYK!EU>M#79''?LNURAIWPO_ U!+ P04 " "GCJ100B/7VYL2 M #0S@ $0 '!R:6TM,C R,# U,#0N>'-D[5W==R(WLG_?<^[_H.N731XP MX(^9L4\F>P#CA"PV7,-,LD][1+< [302D;IM\]]O2?U!0W>K/V!F3&X_9&): MI9*J?OHHE4K23_]X73GHF0A).?MXUCYOG2'"+&Y3MOAXYLD&EA:E9__X^7_^ M]M/_-AI_=)^&R.:6MR+,198@V"4V>J'N$DWY>HT9>B!"4,=!74'M!4'HYOS= M^?NK5OO\\L/-U25J- ).72PA)V=(L[PX;T>2^ZY6-V1.?8<%V1D?WK8T9Q M=(G M==VZ.D.@8B9O"Q3O$SJ4?=EA_3H3SCD7"V#9NFRJY!EH+R1GG#%OE9[!=D73 MW:Q)$X@:0$4$M:)\^9EV,P@RSZS6NR:DAH0JP78CVCC===-/C)-2@["421+:;?SP,)[KY;(EI/G%C MO]ZJ=91K+A;WF"LVNUJ4Q#I?\.=FD B9VN\;K7;CLAUF@RZ[P'@=99MC.=,5 M#!)4EIO=+#:AZ:5 0@HY(PO5/S-QN&D*[D#C\EX*U,_D5W0]'O]>#;BJ*=_#!X=(3Y(D\$^810,<5 MV'([4L*L=T=<3)T P8*T)O2N #TP^-&6%?P(N"D@ X8(:X[HAX#GCS5XI< ; M4CRC#E2'%$0P)4,>C%<%8'2V;&LLBV+Y"^?V"RR7.\P>@.!L06<.\;O8_N\, M<"MP,*/]KG6QCW98!L+,1ENNR&<+!,EO=0LHV (ZEE[+R3'>8(44L^&+\(B= MWZ_+9#5C_K[5WL<\9(X"[AK[@#\:UGV]/-(]06SJ=H2 KN+;01FX9A.:4?R0 M1-%GA>*\:L .!JR'G8O"H&EB,W W)8%3Z<"UQL^,WQU]IC9AMH21L8\%HVPA MQT1,EAC2TKM>D2Q&+-N722PCIGH,#=DBX(LTX[I'%D5T2+ D4GD(./,7DOI+ M_W5-F%03X&A-!(C%%OI[_A1Z.$-S:[A.M@:_2&TYAZ4B/O<_HZ!@W5"BHH.T M>M(MWF*"':KP_ZHW,Y>ZFP&;<['28@1-H0BEV4>_',%0R=TE<"I(5=>7O9LKSZU\7]^NC'W98UQVQFN-PXG+KRY([-A&R M_Z<'7:6@!S$EHQG=JS*NQ,ETU/OGKZ/A7?]I\G?4_[]/@^F_:H2/A'#1CER& M2Q[VQIZ=CWW=V\L9:H_8A7]'\ZXG*2,R87 M>8#% /Q.!2V=R(S551(KQ09I/BC.J(:HLC._A-<^!ZYW2;C,[OD:M<,=\%4\ M[SDX'N!RKQ$MZ[?-=];FH%7,M5X#DV,5K&E [25CY(P&7>8Y5&944JQY#6?(!X\SJE&R8R2'Q9,;C(HF'GQGIW#4&U;>8RNPMY:!485.I1J[ &)?B>#12F%%*64G% M>?P=^5QJ9'+,-[Y:45<;5-!35'P9M&S"K!0[W$1JQBIE&15CIOO4#KL:M#SG MTIH+5ZU:)F21X5!*4)@A2EDA;7F@D$D-3,XXY\TD^=,#H?O/\$]BD-M+-D.2 ML@S:,D":0XU'!3_>5#7I8MZ\@-2$TV7K*AEXG>'30S_X#.L=C>K.O73T\C.8 M,7R7Q# G#K>&\G@>OW1,2^0T@_L^"6[Q@-L:YHINP'10,^G,$'Y(0I@:M%FC M=8AO,!TR,[$1MW8KB5N6G[ &[R"'83IV1EHS=.TD=%G.PQJZ(WBPT@$LD,,, MXV42QOP0Z1K.BNOP=! SZI99":LKHH%3=61Y$6Q M@CF&RM%\'!,\ RX#I1FQE,T8S4L!%N=6@W:0MR4#-B.M&;CB,50U="6/N8,) MH$].,(N,9@Y=:$%R3KJ;\YBA3#FQLSWL'F.,^)9S#>I10%4W8%4!-IXO#]S$ MV?9\UCMUAEA8D@;;9!5E T4E;PG94PJ?S=)_LYS:V@=%!UG* &NK)#_A$+=<3Y.:O[%\AA!O9#0"/JL=39@TA6>:6UEI#5#F'(YQI8;BK&KD3L0N?!C=-6; M&E8K(EN,5Q[RBR@."1U>75CJ'X&P30> MIQ*:02UX(J%&[ AG$X9D@;,<%46SF=$L>V9!7S8&W&MXJT=/9/HELPC-$!8[ MTU #5AVPP'L+W6S*7>SX[KKNYA?"%P*OE]3J"((+HUJ*6Q[T*3L12>BW_F?5 MGW6IH<]QMD';@I$JN6XH%8_!9"Y\,LC,T!8X%E/WZ4,";0I$V.1&P+N6)S("GL7:\1*G(U:$+@T/513AS(?,$)E'" PD)IQNDDY.9"Q%UC#5F+82L=I)\T(3#NE M P7WG-= E 'BWE,!^@]0D96WTI_&>*-;]"=F$_'(64]%JSE*I[M7TYMON#\" M7_,2*"7.+KKHWB\/\KPLL$VQ:R+V9==L0K2O@4I MY]B1<3&-#]5%J[ I>76[#K>^A!*7SW: \&[(II3\H>Q;1#E33T?X9$]4?@&K M!8 9S:%51DTR@K0@\9Y8\=&#,IP SAB\2^"A1RP MWY?46L9E_(4PM80FDS6QZ)P2&V!6G/""1.>G&*'1=F[YFGPR*FW/\V MD-(C]I0/F$W6T"(ATQT5Q'*Y\!U8FDP'$P=^I=W;_WT(OF6!!Q@O?@6./C$F M8P@3UIB9Y W88_M-J,MA*O.Q4F]U>JY:/-E05BB1B:"Z/-!TB(O%9E^BF?_R MX,PS:'G\.AH50E+2$-]G[$R)!>5*.!9]3MR/CXUT0]+0W M&Q4G/PWQLV?7PL;+*5HN=V1.A-@]01(;)./ =IYANEN0!RR^$+<'-JA^;XQ: M1'Z" 7:@;L\A8D65M1IIQ!_ U8 U76*WQSW'[I*Q)ZRE&I2[ZGE EUITC6,3 MP-NJTIMLO1776&.]"4O4LDG]-YK_3J0^\]?M/PTZW<[C/WMZQV'@PFH \\\W 3\Y8@/V#+^UW=!;JJ:H6I(^_@9CX#.5BFIW M'(R%HDYY5ZW;UESM+\WGVX;^S\#3_C 55U0N/2/;56].0 O(XGJV& MJ?ASJOZ!K>@15+TOGW 0?-,2TT? 3.?!=QH&4]#H82$VH!I]OQ=,%KI/P @5 MNZ:YK*[N*711BV)G^^IM'D+?J1;?WR,4W(H=.K-4)WY6G@I7'Q0-%95+9;"D M]A=AI9M>9.=_';\Z9TJ(X(GD/6=M5N);F" 3<@AW"6T+PX3B."]XT_'<)1

*"ZP"I1M.(<)Y8$RW=G"V26RJPYF"UUY2%?4C[B1_E=UINZ> M"T(7[#=/4&D'"Y/ +1[SV1Z/HV'"#Y7P-IK5,:3&K\?68\3Q9/288?MI@WE_ M2S2#QB!KT@U\B*P9'N1#53 $:]^_OW!"7-=/#6-ONQOE$6.VQ_'<5IB7K<#H5-SOD%:;_BG%9YO9$O]VJ-V:: S$FZ$Y-WV\+# MMOP$OVP:"6GJ%-E9_CH=82LM2(FU\ULOLK'3]4LU*2@[R]=5T+:E[.K')K.C MJ&>[$YRQK=#=)#>+7["P89T^6BO:T D9G5Z*[5-^!FLXW/R/%DK?LL0WZ20I M"H(2>@IJ@=SWW!.[UGC)/*=JDU=N+1CLUWMP5M(HBL7HQ6I/@>[Z.M]0LQP,E5K"EO]LQTY-.M?^-09A/Z7*F MI9RJF)] F+M4,5-33E7,'G1*)U7,U)23%9.O5F"C4^RH\7BM$H.M(;:X\\AO M'B,7K?:'*>]X"T^Z%ZV+BSUM',#@5)668?6&RP&U0F RST9.4G^G]<.Q[.,T M.74D)LS\ Q;N56Y,:DDG/W&]A$+=D5"X\*YL?1 AB/C2&PF/Q.UY0A 6V095 M,Y^XSC*%3-\J+T[^=B,1"ND@ZA;%]9"=Y81T$82"1JZ%U$>#0L_,E*Y\DO3 MVLI,3F2GRM0&PE?,_\INPP3[9Z2K ,/0]<)O.J7^,/8A%CGG#JF4]\:G'*'1XFB&P M7\K,UYE9_X+Z MN$>\R58[Q1HMUYZI"?-PM?">([QV^JY3YQK7UR_86 P$RN MJ%3&FW+94>F?BZ3[)S9*T)_J0#7F.K82.Z'Y-O:;@K"!_SW1\8F1&[<8[:G; M^5=*.^IC]/1 M$S"N"C.F=A!HK:6]QU3L!#\6)3[M$)TQ71.',A(:=7O;L%FIIVJ\A)<8[9ZL M[=&9M1^.GDMW"BKPKW3TKT'[^;]02P,$% @ IXZD4,MZPY$!$ J^X M !4 !P5]JTBLB)C;TK[766;,F(5TQ5*POOM9LLRZ;"L:U7W[^][^^ M_*=>_^/F<2*IAF(OD6Y)"D&RA53I#5LOTI.Q6LFZ=(<(P9HFW1"L+I D]:/=;#>EWG6W M==V^E![N-N7NH)%SG%90P_I?U_3_GN&%$H#53>?/K[47RUI=-QIO;V]G[\]$ M.S/( D0T.PV_=,TK3G_%">6Q;EJRKFS+[\A_ZSBE6[U>K^'\NBEJXKB"(+;5 M^.-N,E->T%*N!UY@XFO3>3@Q%-ER;):*0V*6H'_5_6)U^JC>:M<[K;-W4ZV! M]B3I"S$T](CFDM/L:VN]0E]K)EZN--H:Y]D+0?.OM17!RSJU0+/;/*?U?YA9 M8$;*DX&AFX:&56K5&UFC2&8O"%EF3:+2OS^.0R"H)(-@4S'(ZDPQE@U:J,$C MS=$IEV$;!P&W>6A.YV/H1$NT-\(XD2+!'!C+%4$O2#?Q*YH8IGD W,QW"*4( MV7RYU8RW_4G-D/J!8(?03LTP;0+U7Y%N(VB>163%ZILF=+0ALF2L90+**U$$ MD!,L/V,-6Q@5BC1.;"EPOQF&^@93=%]7QSK,*PO\K"'7#M&_]\*?YSVE**2O M*(8-W>U!7LNT2;H*3XB-U**8D.D%I:@ ?"X56WU"P"SNV+,7X 1Q8L$;R%J[ M8(BNR%)@#O$K5I&NFL"PD4QT\.'-!T1F+S+\MH\]N027 GF"0*))/01#=Z=, MY\GH?07N NUITQ4BX"CK"^=Y43VZ@-=F5IK? WDC=/,46?0^L2YI-J2YMQ,&_!]/[V70R'O:?1D/IIC_IWP]&TNS7T>AI ME@&E@Q%0:H82:HA&USD&"3/"$^>(FLOFLR,/%JL+65Z!W%:O@33+])_4Z9-Z ML^4M;'[P'O_ISCV^9$U^1IJSY W]V"BM80.;$-!P8ON\,G]>="[;Y^UV]^JJ MW6OUNLV+9J#E >+T21B$3!1?/OQSATMA6WDE&J:]7#K2ZAA(X->?$V.YJS[O M94:6AAM$1>1KK563;!/:8ZSHNV2M)KTAO'BQG%_*, MUQJ%KT_^,_K;QJZS1 MKM^W!C(A:^CJO\F:C1CFXJHKJAF3C+5KX/Q0137\(U(0X #7S;Q'5G*_C"U[ M'(;EA^89LBV:(?VUV._8>AG8IF4L$7$TD6I6CIK'8>2\0#V3=Y),#JX)>";6 MVF%&&?9_(&@E8S7@IEDO'KR4Z9:CYG'8/R]0S_[GHG7Y!V* *VZM'\#5M>CR M!::D%?5<@<],6[.KB&KD>%-FQ"'JL!U>3#W2MDSGWTTW>,0P8F*=*EDQ.Y!* M#,5#-$.QP(9H= E[8O:$KB;YJ;-DJ M68@?@&>N2]',%0CX@N,ULPSEKQ=#@[::U FSU@S+I5#(H3.I5&AHT93'6 M+420R6) ,<+#^FQWF^==<=C"':H\H"Y$=0<&QG)IZ [PQ)S+2#'Q['U V\4M MVCC4(6PD356QVY0'&<.T-Y!7V)*U "962"VUXHG3(J>"1!T;^HIB+ZG!D)NY M%OIXU'67Z">DX"1-Y^ WL0.Q6:2<.H4*T%8EUB./].,='6V^@0H !X\<*YB= M%9Y6\<0IE%-!HJYI[K#N,#7%CXT6.W$2<*F#?\'SI1'Y9.Y0W]'%'M(0L [S M8[IV\L=TLR?XS]WH_FDF36^E\?U@>C>J"?U)'0SQV_&>0?I(F9*2PN?82FCC MMD"8@QW@X&7)73)6QY&\[Z3&B^KB;T'= EZZQ81U&P81+[X)_>T&S0V"-C$O M9([>+2(#'JS+9#T&C9F9P@@'?*-XM$EAQ2Z-/EH[HO)R$U]/'=EB2HK'@X\V M:\*&18J:1"7$-P(M=KL3*RUZ6T(\ O"J?]=P:;!$-9AW$H_/]VCFPB9#GZ8< MP_]4=EP@AR3Q")!FQKC563&P>0A2^B)_8)C6=$Z_$G""\(B\8@69,U@#,>/, MK K'8/N,Z%+C@O6R-J20,U=]0SH,?_10JKZZQ#HV+3H8OOI'M[ VG+@JBV?N M_&/]'HB%I< MN#5XH;NY3,KZBWK_I$W71PHMZ@&2/,R*E/HD01X1T%:7N(93EH6S4XK7^!MPO=IB!45H\ M5N2,/?(A$];=# 7J]\AVRRQ'/ *D[ED4@S$#%4K9'&2?9,ZS6]C)LELXF-X] M/(Y^'=W/QK^-I!\GT]GLITIL(<8DCZ0DZR36^.SXI79\#FL>;!A@AQGK8L09 MF:HI,%6ZX+>$]=WM-KL58]A'Z(,G3%$Z_7+G0 AN],*LR)]8$3:[V+L;20F: M[/!<7U>=OSPSJ_^SW;5VRLQ\F)=]TO'#M9MS1"O'R0[E0^3^=\/DT;OR M0F^]> 2-C>9SI#!]CP]N1$F^/FTX3 WT SU9OW=I)]E;C;>^M#I7I/.SN(7 M(."X5PK+(@N&?;0G:L9*I9VS/6URG'[7$,$TK6!'=_!O#7ES<7])_8)_G.<, M6_-4/0$6Y%9#)99CWW48_C3\#U+]K? IH"0P6-)T"]8PD%+K!%B11P.IF\+A M^%"GI(0E>KN6BSD;* M)WVX-.)3Z%#'9]&M>.!%F^Z6GSNLH$_B!LO08<3N6-G7$QR3W'+">KB$=ET= M"S.*U8G/#7;<4]#A)3+QYG%NV2*.F#Z%J<-GCG"'"S-4Y7X#MD?218P \7@B M;-(%K_9$_8KW05X[*61/1E\!C1'$O$"9E93!+4 \5NUITYBDC?V4P97#7U)J MCH*0ZGS?&+/?P$,3?@FGP),]M2'J:,)0U"W695W98XZ*$2 >2X2=HWBU)^JY M <'>,L$ZHOG.!*G,3X29Y<7CS)X62QY9TK%7(HOP$:V\:74ZYS$_LWQ8!5>@ M@K(OE"S<_-FPFZ8-JH$),WC#%\#+1,];U".@R2'>!-XA&Q_%C81ZDY MY^WNAS@E8 @/-,.T"?+.+O=S*MQM\R&];DKC.R'@O-EM=J2ZM!4)?WA2Z6$! MGF!)=B1+/WJR?ZJ)?4 *T6)CIN)U^]RU2SG0"6W8=NL?_=6,7G!OB&464/ M<83?8N$#C[)AK$0"OR M\?0SUC2D!K[W21[#V!6.QN@9(>:\?_-#Y^Y OE+6"?R<8P+7MN*K/(MO,D6S M3^.[50M)$TU\E?_AA7LOR2LV@3/Q+=]+5HCT'6A?M^RK-;/8;I,56BC\ T_U M>=@P1',$#5;]GI^3"/%B3H$#&9 +=*C;=FBF%PV]P<0%B\^Q;L%J%U0(W@&D'V_2"8,S 5(%F]LR<*!T"4] M!U)&)1:6V%9G**>VDV<-40,ZUK>C\ MN37L8B8T7]@ILX>)/^>FAO#D@;+%D0?*GC1Y6/@K<0I9-KS]N85(H0P*20RK ML05J+#LO_6-HE*X$GHRC#U^N1X[1H<>Q[ARDDFV=?MEL1=?I_DLD[RW.>MU[ MCS2I7M1V5T7)H=J$\J7DARQ7FK%&L/33Z-G[W#!2ZXG7]U,M%4JSR(5/U"/( MPZ<-<&XJ)%>JN'US@*O$RM53PEB'X98FOW(-1M'2%;=M%E2B?@_BW*;J39') M-HPI67'[\2(2]?I?)XLTJU^07*GB%LT!CF>U]1%.L?N989\0FFSIY EGEJ^N],_A0^/..P0N_F4D9ZA)!,="$J_)W)NS,GDD+8ZNP/M1K@3C/7%2R!?_T M=\="2.V_(B(OT+V]?*:Y+$.LV?1>40K%G-J6:0%,0,CH YFEE-&[&8W<:=V- M;&(E&]!X&>+U_9S6#@X/^VN@^(AOTO&\='Z2->]K9J>1X2N(W6=TE$/JDS&& M_K^B@X!N#3%!"KS*_$[3N[;W;'G?O@9=K+C\W ][^5&Q3 #5B7J@'K]6.&E: MG."CHN"!U<(?/3^L=^1LXM!3'E:&[IT,1)_XV_&Z&K_=DW4_N]7=]9W<5SN? M'OEOEXRY^UCR&N"X59LF>+]5<*^;L6F6;?_P2'= .]WF1=E'J:38)^_^IP>M M$JM>!J[44&)JO6.T=@JZ F.-7QJNTKW!Z^?_ U!+ P04 " "GCJ10A+LG M.DPH #;C ( %0 '!R:6TM,C R,# U,#1?9&5F+GAM;.U]6W/C.)+N^XG8 M_Z!3YV%W'UR^E:O*'=V[(E21,^4)>&2F5\"2"02B5__^W7I#IX1";#O_?;N]/W)NP'R;-_!WORW M=U%P9 4VQN_^^[_^[?_\^G^/CO[W:G(W<'P[6B(O'-@$62%R!B\X7 RF_FIE M>8-OB!#LNH,K@ITY&@PNWW]\_^G#R>G[\\^7'\X'1T>;EJZL@-;TO0%O\NS] M:?K+:-.J[_TRN#C^<'QV^O3R\O*8_YH6#;"H(&WV]/A_O]T]V@NT MM(XR'03XEX!_>>?;5LCAU;(\D)9@GXZ28D?LJZ/3LZ/ST_>O@?.."GHP^)7X M+IJ@V8"3_4NX7J'?W@5XN7(9-?R[!4&SO!QG5O#$.Z&J-K>L%>WL]/(8N6' MOF$M!D?LJZ.3TTUG_P\A9_ENP'[Z/KE-6RLTQ H M/8:^_6/ANPX=C3=_1CA<%]ED%+*F?8(#VR>K][:_C%FMU/P>V;^F!+M^$!%T M;X7T_\>SJRC '@J":Q1:V W*,&O06">LT5D-4U$_$!10H7-%J\6=JKU.&/QB M8?*[Y4;H&[+89ZY;M5A4M]@)DQ/TC+P(/2 R\\F23:?C)Q?/N?@#5J<6P^:M M0V5^9D5NV+8,\IUT*0KZA36?$Q23-YYMOKY:CZ(@].F",J6M#SV'3KPAL>R0 M?6Q".K7Z[41@7WW?>:'6'R7JEDY7WIPMNL,@0&&0_%1+,&7:AR: W<]M"4+: M3R<"H<:\@\,A(92F!A8+17- V+NW"#,PG^O- ";M=L+P-2+XF=-Q2W<:)*H/ MJ;I%2$PF7R;S+1]\K0K!L,=NK'C?LQE9ODLKS.FL@ZB16E,,NC8[893OF[B[ M8N0O5W0GR9?C"26,8)OOL>COWSU,4=*]Z[34X%F)O\@HLE4S,OS0:HHG\S][;O'3G^TL)>11)ES31/ M+V_^:(F63XA4)5;41N.4+FB#Q(Z>T%$JG(KT*EIJ4Q]B)UI]A3TX^G)P,C@9I4_3OT?C^<7QW>SV_>TO MX[OKF\GCOP]N_N?[[?3O)23!Y<#TT;=SQ+GL2-$7CUZ#ZQWN;K?Z2, M3=F"E_3@6D_(Y0?2PD+'71(:H[O.-#1+:Z3LK'5O"'),T1'>=+V9L!7 MG,=\0C7OMW>G26LSXB_E MZ0X!NS$@64,'_%6+#<;@#:(>PZMZSM ",IVQ(@ MQ;76$ V5JF7!D;#S%D#YQ\?S3V.[@)RK4%4-X.5(.C5+TL* +Z 4A_Z#@X[O_!PLZM-[)6 MF.[]E$AHZNP5E;.:J&AX 8#0A.U*/93Z*I70R KO%9/SFIC(F QM"VHV7D M,K-['"X08=P0M&#S.3MEH88Z4@\=\_I[A>Q#W6%DSA< %,4G0DK@U%7VBM5% M3:S4K " )[5WZ 89W=(_M1N?3,&6H."^-D,SK4"V<(>SV0/MR#OVE_S" *)[ M]1N7%_WM71"[:+>_NWZ G-_>A23J:*-*!S5AIR/7*/[WUBOZ'B94Q;[XY,4B MC@3!TJU ,"[,@"[-VHI@G] ON8*!&(:[Y%*6W(@%\3_XA$L^# E^BO@APM07 MSRO2H=M,XQ"V !6'0GY6:$8&Y-XH(09Z]GA++"RR;H^ Y_)/+ M#R:&SC^C@)_?WZ-P/)M:KQ)LV^H,PGZE 3UI2SS0=(X+)IZ@KB/"UAE$*73X MI0D^>Q6BQE0K>$SV(%[ F%$'=$@3[K?I0,% &-?O0M&$[ ML8UBB4R0[<]CJ*4.YCU3L5\%TKC"_JM82=;V]@OFY71M"S6F?0(V7NPJH)A7!& 0F6FL*9,(<-"2_88_3 MDSB0$CW^0L5QC8/8X\1NS\H\3G^)-5V"=W/-[U4K+EL;[,T)!)HFI;=J,F$. M(RM82#1#7GR_X_^D-:CE'.JA^_4X'R1:/W#4)+5%1L*2,-$/)Z"0(]!;]W']191N)L8 B8:'[>*B=J89R@L$3'(9M2!2D( MMKV@S'9$FX]*O*3#^:+[P,NRXA8RT<9V>&01-WBRV/4\=F';IO6"O_J4S]_I M/I ./V$(2ZF:79K?"@5*M[^F?+0A_=TI[DX2GJ(KO/\0%3/R4R%K9_6^!JW< M1TP[6-*;W;N/LK O184NCZK- 37A!-IF8G>;E$X*=#=MLY1E.*P!S:)'(A$3E M[2A]-2"WUTPU4@W<+G-O%[C<'N7BX\7)I_/N-UIM@BED& "^CY:+DE0;]TA] MZT!2%L(9B:F:YHY(Q.P $6@@#P/9JFE;5NC@U5-$LM::U7;,@01(IZ9M-24 MF*T!=QG;53PE2%F6WAI(?5NR*@('=:%*$@(72%=?T];5 KEX%=4T!YZ.IXZ\ M[=^L?_HD(4Z4(416J(/U21+9KU^?9#QT)/-[:XG&LQQ!TK,.15D !TIR[4G$ MKJ"_S]+/3[B?Z(0+Y,RI!B)"GMHX!)GZJRGR4B+E)TZ2@ET?,&DU*#T%D3#0 MAE ?\ K14BCI3"Y56#6^V.! M[466MJ_(8YD5T>,*V?SAM>TI5OHV22DXF^D0PJ77)M2@&6GL7WV^4:$OHZ6 MFI1DYVJ=4EUY$FBD'P@W7^LH2R-" +]\;]D[-5W $.G\T$P"XF)._$_('#14+QS>LF.PE+$D__<^3Y!BJU!.&F M7KG!5HG-;L-S-(\D9F0M#=#Y4 S08:T.>+.#;+M]"=%)A1(_?S#TG,S['QN& MG+$W079$V 4O6N#>]TCRD8LD&V@6 ?I'*4\N#6K"N'TMH1"ZV M,@@ 1-&[C$$.NUK/ZD4!R38 MLU98D>C2^Q)%&T!6R7(*K[5E]]9;16' &3XUVXN* M:D!8AROIMQ!8$8= ,3LKC=D9A/"T5C$[ X[9>6G,SCO!3&8\%<3V:'?X%/ -IT3)#.J!6@3:4B$# M.4"+]6!I"2F?[)]M5F$1"[*X*?/Z$&PW8PW/Q5*9\[B/P*J0ZB**GP''SN9I M&;B/8'1&8^65J>C<9/+IYS @.V*RD7*GYQ3(WJ5<^]Z+7YC]^-DKENFFL>@J\/N"JFLFK=L5N!U.V57I'# MMV:#$#PU[2A'$](!;YWSV*3]&>F;#@_&^L]NK!\,* "KUL& .AA00%3Q8$ = M#"BP!A3]PIK/"8J)33,?7:V3S!T\J[/GY.[;E+2I+N0V5;Y[]JX-V?SVM![8 M&Q(&K(>!Y3D#>T-%_$U/+"V)B%7VD[I*-X]>6R%?+1,O?O)\EL(CJ:D#Q\%H M@E#^K6LE8P"\@!N"E!=,=LH N29DI&@Y,/)L]%'XN9LK'\\O3CZ?P+F]4P\0 M(6NMY!"^I:O4S:9O10)A43$(!ZU"I=EF#1:1W8H8:3_?]5(4E(*P$] (44!U M&S+\3ONYULI05 J"P:R6H8CJ5F08\@"B*;&\8(D#-F&QGG$0$OP4L:X4DC6N M"R$,1R-O8U[:C[O&S]C5JK6H%(3-ODS;UM(ID[ MOEE!B,@C(L_81D.J&MRB-'A&P[!B?Y[5,&2H]=G\GJX<54$QK]N?=SG,>8(6 MG2K*MYL^/8UM%KFK?,?1J#*<3#)EG36F'/8"2=U;@H;5@?AZRFEN.5 !^8/V M!&O>U?+AXN0CH!PP[4,M9!\ ^E_P*W(8I6G.,G5."FEQ"%ZJLJJ/G'SU?><%N^[0 MQEA*=,P)DQEM?-]$)&QJ$8"R-1A!M20:[:=W]7';S M6KC?J=V\%K_KW2[V"\,$W>%G5)"GV<96WT W)RM2JJ[6\9F_:P6JG6^I%B#N M@TV1S9_#E& :P)*HH'=++0OT4#^G4;85()OM"DIN"+:8[9\5\/SQ\4=@+ZCL M50F$H@"@%W07Y"!&IO@445X,@H.GHE)G82PR!@"4Y/!C@MPX'\8"K]3X*&M ML)4;@$K)(P#4[GV/VMTK%&[C'-6@J2I <%LU@)F*10"0C<,%(@7>5)@I:T#P M?34 FI)' *@I6-2Y>,RJ=O@<30G6Q(X@_>ZEK[XA.6?? S2+W#L\D^VZS:H" M7R>5"F#&(;2 * 6W7XD?5!C%FVK E\^*4";<]0C&H6U'RX@:;,@9+GT2XG]Q MVZT\L-*&@"^Z5:&6\@L-_"QUX]DN&Q*@=94@G'55!57'&S0 %7Q^B4+V:D6& M(99ZR0MT[[;4:W*OX'_B.6E;P(W[/>A**HHWH!VT^_)[/4UKP/<,^]*0 M6!C]UY$O?M3,XK-M#/A68T\:$LOB#2@(+=N<@O#&@&];]J4@7!;]5I#A+$2D M42W9:1'X)FG&3@VR;?8EHO$9/X:U'$8T8VX1F2M]36< M*L_,R")DS=*L+/W(DQWKJJM F.LJ@[G+##1OQ'?/BG?BR.&$!T'$WD3:;,DE M>.DJ09C]2B"F8P<:9FQBGVXF=H4-OBT"X7RA!!YYXB%+?Q01@J33FK D!%=^ M12Q2'B!#PFX&&*.2+0S!<5X1F"P;X+!!(35"@_$L]F6.HS (+<_1F03Z:A#< MW&7PTC($S7M]3TT7*\3/)=\0_%R\MR]R8Q\-TO8/+NWV;OQQR7^Q;)Z:1I5; M7E"P=^YL$1, IL \6>K\X<*B0!S97]8/\;S_Y 08SZ,@-.5 ^"VZ[B M>!*QTPH FW[R%(SPDZT0OK8.!.^;F>"UK(#;S/8P0L3(HWV($#E$B-1]I@OX5IF3:*,2'+4.2'9T/[Y8JS2I)27'IO_0"6 \8SQEP@9NO3\6V%XD M56]>[05;HAT1<,VVWY,0IA8X!S?OOHG@F@:"H1H(KNENQ318$?L7[I0COO4) M="?HVG]&GN6%$\3>7K)93\'8N_6>Z6<>?33B YK2QUX&]=T'XC]CML\,AD%V M7ICZH>5NQ512Y;,915['4;,WF-^($_?D9;]DI>^K\L7OK?MCK(--N?($F!3(:> M\Q?DS-EZ3,?Z,Q4\"K8\*Q\VJM%>-PZ,(KD3'/Q0G!2KJT *PJR);-[%H6(: MP&R])3!Y/EQ[RJRN N2LV41!Q4")F ( U.X.3WFP*2L,X:S91.-V0& M296I0N^EK]5FE[[\!H2AFSL-)^+]GPM(-FSW$5-6EL8ZY> [[>.+3]C+290+ MT0[+H!(,3W]#@)LR#6VGLQ7 ';:>N!%_[\<$:>Z!:^O!9FE](-BS\D5T#ES\:7=ES4KAG*O&,"H?".=/LG[J/E6\6,B&+ %#D;PUO\R(E?A6L2>2IKP9A M)=.K:.'9925/ /"Z9>]YH\>0KK4\2$"_J"EK0+I(U>"ZIN09+HK*Z5-3!\@" M9Z"?!D !6N8:APKT8MP4.&MGX07&.[V1(MMH.)8 M=)>?O,9K3KDSJ].38K1OOMU!VG!?SJ.^88^CDA"N.FN2E.UB*/YN$K4>N580X!F.S8[QC/^B2IU:K2DXYTY*!+.#LQJC .;=7?*$C&@R@I9J M LBFM8Z2Y_*&EF+^YP,\OR/\?''R&4!.E"Z50"B0=C(H$C=XLIR1S^T/F]8+ M_NI3F?U.+1&ZP*KR*)K5A+ EKJ+.F2R+9HQVE 9G_.(A$BSP2I(=:^=W. >6 MVF530'W7,A;.>,(2 /)E"36C(%C=JM-1NB2)R &,RMH6OLY#I2C?G?=)RT3N M/3SQT.ZKUVB7G50WM\&D5^L'2_%F3JD6('B8:L&MY Z:3VF"GI$7H2^4_22L MB:>PCH+07R*2OI+.+LG3_YRI]2H!N5)+$+Q0I<"NQ"4TT.]1&!^3,"_9, P) M?HI"-DE-?;&?2@)YA78@W+PH!7@%'J'!3>>>D$U)(VN%6;X+VV97 :YQ$#-# M*9.MQ48U(=R=* 6I$5?@0"2^C9 3L)DGX?9Q05>5A>]2R4@1U%:#D*NI''Q: MEJ!A-[*"A>$D+E%%-"'F*R@T@$ZZ@@7@=&[[#V0R[V J1]K%4587]NEA.&L!, MQ0TTJ#9&3?(.E'J(R0KO%Z(F7"\R3J#!(QK^Z>7]\O-AL>I^H6O"C6+&5[=1 M'(^A;_^XLNB^?N0O6;@@/U%)LA BA__^G?93,K#CM!C8P9LZXGT-LIW1G[;] MQ:4&O,>^1'P\V@OD1"X:S[C17I!F]IG?J_6VS.:6^O#%(HXJ2J3!]O=UP#)E M>L!2M#CX&3L1W9**#[,DY>#$@C2.;7)>(^&\HP.Q C5LSIH@E_/(/+]37Q$B M4*D% =J2BV5 J5C[&>!,!?3\/GTXN3S1?=!'FW!*F2V(Z1O7I$=L1#0,;7; M;42D+^;("G9]%EQ151/H9&P!L((?7,N[MY:J=S#S1>"$;[2RTHF9!@24,N1M MMQ"0*$:1DHF$#2C^L(*X02XOU2!H?O&01/_=_!GQS2D[I*?S(Z." G(N#_K3 M5( 0ZR=6G31N2,,! -V/9\:U\G'DG3)P;FNWNBKL< T J^I,;GGQ'*/9KIVN M@"Q10IW/0M\.]P<-JML5Z%6W$ZW:T\ZOPM%PT4<[>?RN>6!<60?"A*^^)'X M"*="?0B7$:2H5. '6I23UJ"5V;-WFCN"333E.QLF 3 MMWB:A(@G/9TN+&_,I1!\I4V$P:WW@.@0VWV@9O_=0S +6M+BO,+(NI3Y>5RH!-R:+G9WT<^ MG9_]\.\HG"#;GWOX7UDYQ)5V!X1$DSJD!\)MYW:4LT.A_C3Z'N_?OOAD\Q4K M=[IO)9<0 >'V>,\T6R+)]E^@M6T2(>>:Q=0CC]L5SY9+9<%C&T3[%UT-"'?0 M6]AOZ-CN^*78#5DL;?B-13RZL0ZH2G$FAUZ(K['++S_$NYERMS+/!4_$)MWQ M]U^3#@>TQP'O@19AO1XYFVX' >^W?WTQ] M#SB7G/J60:H_P>,UYQ)=N$ISS7<7M-*TB,2A*\T8?7V-7ZG)_7#)O3%]^^Y,65![(DQG;O[ZFNARKKT/2Z>?,3S@T5^M]R(*26/LLJ\ M/3Y\"GB*:LE@K==DEX93%56IQRVT<#7.QVT0L$B7B&!O'L[6NZ:[>;+$S%6< MB"PCQ>G""D=^Y#I7*&'1X2]&AMC&*W9K461M@"(/P@W IO02GG1[,A'&TA;O M!ZHLE+*6(%SLV^LB*1,$.+TXW+]O00,E%_,:U\"W<_.^Y[']DOMTC:YO]:/Z M]SNU3 FR*$=KSG[,MF8WKJS1I;U29;.M9 8:5IS("5HEYCKQY\1:#J-P0NAL%^ M(LS7F5H ;UJ L&%L!=\-?]#@S?'*O?B4[LW.E5W+3 +83!93974(F[.2P)HS MUVU8WQTE$P7,.O<];F?/^#>;E ?,^EM1FEDV0?Y]\G@F+GOO\:(8_A=W3?_8 M]C[P9_'7@PT!_$ID2L+FMPP1O0D7#*V0;WB4P8 [A?;UFMF$[<8DST-F?@,4 MU">49O(X68;DCIZ'XQ1(WX3+_0K@#<8"_#E!MA?!9"3*;]8K7D9+J3!W?N_Z M73T!\HDT=R@%L'ZGPT@6@: JV&&J4RG9>,H%)2#L(DQ1:5 /#0<\BK#:)4 (2H(P%AKAHA)10AG8F9CQH0;:-")M_;K440(DM[YU%6",+C,=5(^ MVHJ<]0N^5&W'LR_8LSP;6^Z#'X?9=YB'8DVVH1!D9]$1Y M[GW/KC+\L_4@F)^-PIUEKG'ZRO<<]?.; MA6(0?!D&>ID[]BHP 0 P;U?Q6(F+0TG'87YRB5E!B@L<:22>N(SJ =DR=(H MG@ZH':;>,F2@5ZPF86Q^D9)<&/FKM62!=?P*B\U:_DK\:'5W-Y*G0=)6@; @ M&:M@>B]$RU9'L45WE/AY_(@(W;%* N!$A3I8B"1^3OU").,!A,Q9HA;AO*4N M"B!H3JX[8J%GR>^OZ/.3YP9YUOTK4@T/(4AOKP;U/PL44O5K!U'?=%VN] MN:(3KG^OL%34::WK($F=(J8+1QTFNPS]!1E++3D-,5M!#C'5AYCJ0TQU%5?^ MG2:V6E6ANQAK/1M*]WQG,=>RA+_IBO.(PC#N>)-N(+A:L[PLGA/G$V#WCE@^ M0!9L)[S57[DI"%$P9K#6XQ/:V;:(D?A.-,\T@9RISS,J'H0HE$I#4<74_C%9KBQO71*/0AT( M,2-UL"@PM$<@\5RKRS7\FP-) ;5(>2HJ;EH27GK!*ADL:14 M(0>GBF0*E+3Z7H&2O']>$R@I;ZT#Q8Y+@SA1&KOQ'H5!:'D.94,$BZ+P7D&0 M/-5= @0%)YV,C5O/9ED3T*TGBT L5W6O<$@>SZXY)H1\=;7")*-RDYNAQ.)2 MJ+E?G\))6PM+@2]HFY\)>D9>A.(WQCP>_OH'#A>C* C])2+Q&V1L;0P"%B/K M3*U7R1:H4DO[A;D17T8E/J'!_I50GA^(/\.RJ/YK\?8DU4R->C.?+/E\>;7>_&CV M-EZ)ECK-HY&$1B28*8+<-'7@!&G7P%.8CD/,+X Y4%2QRP.8R1@=DK6T\1ZTHA M9N.Z$-SW&N$;\](&"B/\C%VM6HM*07#&JR4KHAK:[DMA*!7V-&(#0U.UP]QK M)5@3OP%7PHKL:\JV))-^<6,H05U5 =#271IU%5_0!NW/Y"E3&Q2E8>[89299 M!3=4J<^G!84 61?&2,AX@3;((/LEU>9(Z4%1TD%94]DSO0V#[$-B*?E<-T1# MP+@JA%B 2@/#F$-H?N0-873K,/5#RXU3FURMOR+VQ,=J@>TA05999_.9B;.9 M?.^#N/O!TWJP)6# *.B?:WK#7,"6+):;AU"(D^6*YX[QO?D=?D9. MS+.9E[I:H_L*^DZ=A%OPJ$:)+RHHRD)T3-=!,XDD5[#<493^9BQFZ9'>UU*4 M!7 90JMZ*0AR-OH,0N:*V?D)6[@O/\&X-5\]@KJBW'" M@EU?8M$J4N;2FY ! -9[R7E6Y^NJWEQW_J^Z(A#[Q*HM8&!NU_1BIRUQ;34! M:/N[;XG@,[L"M? E!2$XG1H#0,)CMWNZQ^@I0']&++KYN7QDT.=B9-"VP4'< M8F\V7WE)*+=4PJ+=9 [+4T+[4\7TR$H#VC0I4,BG$9.P L ,$="F#MJ1EX<2 MP*-6,PTP@-)3-09-?E]Q2O<5%]UOF9J$2\@@/ 0U"1.%94&$;^D440$2H!W7 M#F6Z'96\>(<1 QH65*.EWV$ U_@9.]2P"T96L- \AB,I"V&'5 9 "1O0CB%9 MUG/?XT_SIA0G#_)>(]NE_\B>TC.K"F$*5*I?%C0SEBKMHWX]CF6XV7?\U_\' M4$L#!!0 ( *>.I%"#DB4DNW, /IG!P 5 <')I;2TR,#(P,#4P-%]L M86(N>&UL[+U[<^0XDB?X_YG==\#UWEIGF87JV3TSU3NS:Z%'5FM&J=!(RJKM M*SL;HTA$!+H99!0?RE1_^H.#+S""($$2))S99[O3I8P _!7P'QPO]W_]7Y\/ M/GFE4__6Z?),<_ M??/-IT^?OO[\$OE?A]&.D_CVAV^*UK_+F\.WK*4]"^+$"=RJ_1G]3S^(UM_] M^../WXAORZ8Q:VK(R7[WS?_^3O2?_M=S Y''Z01 MG^TCNFV6PH^B;Z#_-P'=P4\*''X$#M_]$W#X;_G'=\X+]7]'H.7'QUNE0C_6 M:.6=A!FU?LMO,GVR\0"=[_A?N0I N(6(X)O_;)(9Z.>$!A[-+06T0[?6P(?? M*(S.#15S-H)%3-VO=^'K-QYEG-5W/\(?%_#'Q;??Y;_#?^,?_==5R%UT_1(G MD>,F!3VAQ;_]KNG[GE8!V8'8.JHKX$1NP8S_V6&EO,4W;LB'ZC&Y\/-?2'3? M1N&A6=2,7=CPY7_Y+P-^X4*7FB(1C<,THQIQ!UY+BKJ!(@._/8NPW<,.)3NUA+/R4<8*_" M-$BBMZO04P_%KE[H1Z:6VO6!VMH%];C5DWSD,*XQ61'!AH01R5D1X#7SV'YV M/M]Z/(1@6Y9M!7=,Y.KVZ,=SAZKUD:QHC'H,=\D\8FX':O&,)+E_Y#_LP4&^>-S1!/*94"A7CZO1[I&-+*>;0\24($D'1 MSHKY*HTBOF[/SB=9L(,I/HV5"*YLCGCLZ2A:GUB;VR(=DUHBCYQ<<^JD)$\R M^K/OMB<4+L6Q5WKM)$XN5=0]'1S? MOTQC%O#%D%+OTU;H1UVC6O515VN">M0U2SIRU FBI* Z\ZB[.=!HQ\."GZ+P M4[*_"@]')U!CGJHU^E'8JF9]-#8V13TJVR4>.3H+XB2C3G+R6>(W;0@V-$$\UE0* M%2/M]'NDXTPIYM!1)JB0<$N^^_[=RU>DH#_;0'N.''A*^_1V> F;%#[]'O$0 M:U2E&%^U+Y$.KF89!X^LC!K)R,V.7#>?W3T7G"KNU"J:(1Y>;8J=HICX3;;I F\3P=O4.]_MG="/"[UE3[9 MI&[I@73,]A!\[(:UX$$$DQ7)V!")S]Q#F@9)Y/BW@4<__P=5KSW.V^$?N,VJ MG8S5>B/[F)!M?[]GL>OX?Z%.I'X/V-(4\4#L4K"\ MO*!HAW0X=HH[^%)#?IJ7429 >O[W@<4#Q4J]]_R3IBUK=4O$8[)#O=.'JB?- MD([(+FE'/U:51Z0@;6DX9H]F]09DO>UBAF2#BLV#4FJXB&'9)*^I@9D_IIYW M:*ZY!)[0SW>:%D"GWR,>@HVJ%,.N]B72H=8LX]#A55(C0&[H@"K&T]:)7P27 M-+[8.-\BQV;YG@1.XC+M1F*6N4"0%Z]D5Z9@< M8@ 8KGWZ(1S)@\0?'&UN[I\V=[?7Z^>;:W*YOEO?7]V0IS_?W#P_(1CQS\[+ MV>F,LM%21G%-J<;Q*EHL8636!1V\KUF0([\*@O\O@I%WQP)ZR_\\C3!;&RYE M!)XIUS@*RU9+&(GGPAH8C4"4"*IG0]*(9@F-8GIG23U[3K:.8YK$':'+62/D MSM6LE.Q8]1:(G4HAZ. X6I COQ8$+?F2::V>GJS&2)DZ^6:AEB^=MUV$2RE4 M//>LDX;H'4PE[S@_6Y7/07 XG&DM"^T<0?U/]ASPRHGWZ\"#_]S\EK)7Q^=B MQ>ODRHFB-Q;L?G;\5+5VT>V+W$%[F4!V6*V.B!VXG_R#ASHG+Q*#BS\D1BOB M)*3@100S.RX^LQU<^(-6C.PY_R-U*9>"+U;C>YHT/W7K:HO[4CULF\T1NZ&6V,.GB(SXB@CR6=7!@H$(^FU-CS,H M+;2EE;8-^Q;SN>^&B^1 KJX[RH5\9+M]LME^Y*$!P(K"2EU]D#NPELJR![=V M0.S">G(/'6Q@ ?%00[T MV?FU W+G[596]EQU:\1NJR'TX)<*.6F2T185.8H(V=JD.X>^"5?4 MMI_>!@G7@KWXM%3PYK/KI_#2^*/ 60OUNF'V)][B3]T MI%=,9(_Y\&O=:5:U1>XSK2K6UL]-#1%[4[N\@Y>-M5.@ MBK =5YM21S\,=A=<@H/UD#M3L'57'K^?U94X/])![$DG HX[Q+%Y=F/HT,:V M/]PQYX7Y+&$T7@>>R'NU#WV/@P7L="=O'>\W>G1'[E-]#2%[G6Y?Q'[96X6A MPUYB5![R)&_6GX3,I__M^O+V[O;Y]N:)K.^OR=/SYNH__KRYN[YY?/H]N?G/ MC[?/?T$!!WH/N%H[+,?E-9YRJ5LOPZU-/W>22.-YV36AOH6*?L7"XANOXB;X M@_,&M\ [+BZI&B-WT'8E:W%O8TO$CMDA\.@' CE=RY<+I];RF-'%]0:BP*"W M=J?4[(K<1?L8H.L9Q&D_Q.[;2WS3#R%*1@C?04QG!&G>Q?,:PHJZLT8944J] M\ZA*C??*]LB!K%/5DW"CN3%BR.J6><1T#)1)TXK 6MPQL:[6T6@Z%?.-R6Y% M9[S0QEZ91P-/;[FC;HT<@SK4K-UC:VZ*&'^Z)!Y\HZN@BV3-,[V>UE<]=V&P M>Z;1X9J^=+ST;FZ)W U;U*MM")XW0^Q^;=(.W@(LCW6!:K4+^,%)H!R0\;GQ MQTS-@.ZYP1IE,)[>W? M!:"-UHIC44N-"8+2^=8678'W9!%W@2PH(FX983JOJRD;8W>]5B55<_TB;JQU M"&QJQJ\NDT\]]P^9&B=1W!.*!S2!&;(C&K#U:K/ZN3:5Z1(>/*RTY?#$&P8KS]/.N%W/\U MU6Y]!5KO@MCW=24?_3X2'H+6@FZ1=VUBY]=XR3V; >"!*(I07%RAE[74>CVB MZH#5"&3JMH+3.15V9>KDW1.E?*Y/*/GNG\[R.[T MX0R/T[,=PH=L>;Q.DHB]I F<8#^'$ W C;?0YZ+L;@,^C].XZ\V)<2;(L6(: MH]8KZYGD@!B1)E)TJ$_+XOP^?PJW(J5())>)R$*1)"1UL4@AE_7G-ZC-2X5 M=B.<,! RM59@.F^&')]4BIT&,'(;Q!BA%'7,S,V=6%!<9461N)/'<4H]FX'* M%#K&0/'B__[ZVV^__8XO^# M_.%?5M__\0^K/_[S'T5DP__Y3__TQ]5W/_P+8<)*6;[P-(D3_@< G@/GC)&[ M)S]\MR+??_O]MZ+%-77IX85&^:??_;@BG-.1N@E[I;Y%SU][GJB-[?@/#O-N M@ROGR/C"2_H1%#^35D?DZ*"O?.V&?6>=#W;AP1-PMH_X9HUH_J@",<@85A#)T<0D:'6D$0N]FZ#U*2 2>UXZO*-[%F08M,-3 MXD3)/[@E.F_/(+%!=O$F1G4^U94"4V%1C6[()RM=Q?ND?$4\P6B+;C;%J_7; MW:%3JB,R[.?W#WU4I]NMC\[$0-@*X#L)DB$T,_PH0HRM7LC]_.>9JA% MG7I=$7M]7PT&QXTY']AG*CA5%U0*7N17P>WLFLI\/M%HA;<[%M#;A!Y4=TZ[ M>R'W 4VUY;'?T07QF->5?.A85XSO-_(K\"""B:6;6).K?GMC^;)X?I#\X$2; MB"]]$NJ)FRP/-'J"&R;=%U]:>B)WXA[J*^Y@J;HA=N8^TINYJ<79D# B&:/L MWA;AK(C@92OEZFQ&B#,CE)>XR#L6$(^O@YTH)D=N!G&1R^)=<\D60O%X75XI MZ[9>0X_E.+U*786SGS9?AI,KI3;CW!EY4M&W[M!3*9P[\MF]2T2>FUV&U351 MV7II'EM7L]5;LZ9+\M03B4UZZ:2WI?N[J%E-Z^[)&A6UZ)J;ZMJUKGWJ79;F MI T*MWJJU'Y)[MHDMEF?E3@@<=P)=*Y[;ZA6>?Z5!BE]SW_DIDH;9:9!*+_)_[^GOF([C!+RX3["//7[]KW)(':3,=H,OY$N M>!+X>8BJ1$^5%[-@;>_2K44CV7K>B$CE.4/W.-ELH="]..JFT2MS:?P4^NJ% M=4L'Y'#8K6P]:%>U1@QN&D(/#UYC\1"@("H#UC4]1M1E#MR%6L&_?)K]"?<: MU@>X)/5WQU[J^QFL$MGVY)^B,(X?HG"K?#!8;X'<5QO4D9U3^AJQ-S9).72@ M"5HD(V;'BY:E3=>]=N;> M:16T_3+W/@S"NH(YY'3LJNOT0^Z.VJK+SMG9";&KZLL^XJUK>.:[.9.OK"?O MFU[_+$,!RQ7/)]2O_F3/O=^'$66[(*M=Y+X]1TX01OU M64,_"LA=?H Y9.?OT1TQ# S18JA#Y+Q(P8Q(W BP*S-WO B>]@X1;%B%?G;W MG$*9IF/'.5DNPZ'$2%5TU-4).2+H*7U6DD/9 ['?:PH^;NYKC0 L%NB86N_3 M.5\4S[)Y1>:5QB*7>J:LNCI62OTWM:H5MW3:DU0>UFSI*,'WR3;R/H%X2?3BS;K M-?=U3XC B^LN+$CY-)YOHH5!'IF7!?-H?/.9K^?#R&.!$[V)]Z"]DEA-RQ&] MMT]N[O.KJY.P0XU"TVL]W/.E/??J%F F(*DD+);L>7LA)-RSD<3,7HBOYLWP MU[6AC]GVN='SU41NX&,4OK(8=DSX/XOO$I#+-BASX^3SS24-J/HVC[KU(L!0 MJ>8YD)TU10]":HE' @@4V,TIDW<&@&%CM":XGB>>F%.C&2\&T*0*E$8D M!!Y"!SDD#39-[2)!7R*( 6ZX+L9PT [HZ<N^1"Q0Q@Q:P6PL>AK)6'*-7ME'@V\N$C%=DU=G_]'([%16U?D M0-7' (I$*LI^B&&ME_AF$JN4?%95&D)XH9DQLYYC93HSE)1%WD$WS[P"+#23 M$LX%?_,,"B?>$R\G3[R<++KTC$51P$+_CAOS+. MX[*BY;0Y537<=C(5\Q"UJ%U9^:7%.^^GRHKH6-,P1=N%>61-Q39W% T7Y(MU M>D@1R;3VBX G7ZA;+?GLJZYN9P=O4\/+S3:;,\RB7:L M:P:008YG0PTC UU?&H@1<+ J0WVH8$ARCB1C*?)Y96EH):XE:EI_7FS/3DYN M)WGCJ):K]VPU-A?,SFZ3:QJ$!Q8 9EI<@NJJW;8T[4OC"P%5Y5*V%X$O $[- MK)5Z8JG%5?&\=JE6RQE:6@M$+0V'8LK(YPJXO,IGCV.:B!OP,#Q>%*ML=*B: MS_^ZU1SZ4UDFLG:910-;5226AZZ=FLP;JZ)"V,EL(Z_\IT39SDLJU@9%-\IZ MA8U\Q4&*Q12=17&&S3:[\K(.O"LN?43W-(C9:_Y JF-[H#\5Y' [T"RU[)W] M2""&VZ&:#+X:H"[O<;7Y\/!X\^>;^Z?;GV_(N[O-T]-7UFM^--CBGG)C/3N? M._Q&KR=R7^FA_LG-J:YNB'VBC_0C[DU5/$Y?!,&M0CZU<'ZKLVOQ#WQ*"1+K M>V5SV"A+S./6+%6[;"ER]("E$N>SQ#0<0+9656,@ZTXE^^""76WE_3 M+*U*84:%X2=CAAR)IC7R67XPXYP0X]W$"H]S_U:@;,U."!FR)0E)):*,L!93 MFN$S>6%/M[!G(MG/*?E9N[R_<+/)\Q7*D+9\BIR_1![Q;-0\%^03U$1FU0RK MA[! /"5-I>GDX3JRQ_Q=&VNX[8SD)7V+D?J;==% UA.4E@DPMM?VZ)!@2J]& M^%Y2VA*57^G>_):RY$U_L[RU+W((Z&4"Q<:XNB-B6.@G_P2;X$_/FZO_^//F M[OKF\>GWY.8_/]X^_\5JDKB(C=! M:QXGHTI=.KRC2R>_()-IQH.3*,&DVYPQ.4>O3+'K-()-"6&1GQT_I<7#1"HN M+O!%AMAW509X PAAAYO!QJF'[GVI8(:NXW,X^N$;I;$XI+IF$76YXUC*W&;!5L!-@$NX+:[6<:M0V2K?A!'Q5(:Q#CP9 MTII G@Y*RX0>'?-H8$\;F>6!CY8V4Z!/$7J)_UY >X_(S,M-2;X2V%*6I-%Y M\FNK4#2MY?+'=MOR]9TP)=T&#WU+^!XW\-W$IJ9 O@G"X** M+W*@<#U9D$SVE%R&?'4%_Y@6YS6.SVV8MR_4XX@WJTL"\7.X]CP&MG#\!X=Y MM\&5K:C1D!X MP@'L[(LU;*I!AUPODBN63\M$4LW.9+NXW^\ %Q'^7LZYC3_%H*7",6('/A-P M?G_\]@]B'H!/_JM(D B;I:^.SPTE.(B%T8E-==HCQ59M50$%.QM;QBLO=%,8 MT4T+,7W9AX[01WKD0F< PP._5['J%X%?G@JSXIH-UA7$EQ[=LH * ()>^=;\ M Y=AQ3]P$K)W7BEQ7#?B<=O7DV!%$\Q/;RZE6;+]DGE1<49UZ:FZ^6]++@QB MFL'M#SZLN9GW, N<;1"UK30Z^B'%P]ZJGVUDM'5"',_IRSYNDT)BT;A/:JO" MQ_3Z5\3%:ACXX73M;$=@@)W*C@MV[KKRNMZ=]5JH>Y\(/YE_9WPP.K@A"S1X M.(X-K0\L"",>5Q8WM8N[(5!!]9K%V1U,*)VJNMK]Y^SJB,*T!LDC1P[3AI3Q MQ11MQ"AD7,7!E5N:GV&(:A79_2E1.+DF4\OS#9++90O;T-A59I:?C,CVXHL> MEC";Q57+LA=2*0PH6*$P;$MSY$C5I:B,/*JVB)&D4^31M5Q6M6)=_%^(J/0^NG/Y/W= MYI^66M]@.5I;Y!T7]FLKB7 M)!,^>6BXWFKIT<>$+V)R)6O/->AG^-MB/JF?'!9 4+,)GAR?;K8\K.'10O(& M5_X2N'IVA+!#82WMSLB]MI\19"_6ZXG8JWLJ,-0!@$VQ*N##_IK%QS!FQ;E< MP51<-$U(R=;6 <><1H%'7IP)F.%8F,')+V8V&F$^;/@81-3QV=^I5QGDFD;L ME6/7J_)*5G'$^YLL$%$8JKDE\LQ7J]&6)_;9-V7'+SG"BY M:0Y)YXF_IU,/7D4+_5A"#Q:O_)RGX"IW#O-W;ATG#+T(('?1_L9HSUNGZHW8 MH05N^UZX8IG))%)5%,[@MW M, "U?F')_BJ-D_! HS6@CK:QVB@LSK4[S='NZ,KNBW+[;BT,@T#!D'SB'$G! M>'&7&&D+@\['L.]OJ'W,AU?908-WS_MNCSW5VHP M"0)4W'""@'%K9&K[8;"[2&AT0(@$Q>+EP7F#A8NVO<[[+<[[%:JW^_U)IT5Y MO$IVP[Y>KH=S/EBV\TRK7^IY;-83VZ+_+M]??!NU')*I+,[EMV+(43J-2&G*IU"XA\9*O/!DO*B>D?CBV^;SLIF30EHQ50FH97Z6 MVC&J8)POJX1Y[M3(,O4RRYZ1-EK#190AQQ2NK;/\EVHT[MD5*0 /,4#G5TAQ8%7N@GV%"8L!(2)X[>!Q\RFZDQY@ Y$;H-7&D^5=ZL_\66"ST C:@!33\K+ ZVA"DX$:*4X MR\V[-;=%3_-NL=*$*#*]/#AO14DG][>41;3VD':=U39I>V#>BP!R_.IO#!FC M]'LCQJ$!2@SUC(*5J*Z6,2N?F:^R=^8KL1=I_;'YG$:1Z@%@>VS.M78I]6)( M$M[PZEX'+'I1P(X6_Q51C^DLLT[;(T>G3E552ZA:8\08TBVSF86 H TK@8RZ_760664OPR@*/W$/ MC4D:>#0B$7T-_5=QEXTS L7=1L7G\]I'>LSWC39;':]M:X_<:SM5E;U6V1BQ MUW;+/'0@5Y1AS$[JM?H;GM.I6V[ZA@%"EY7QZC:.4QX$4&Z!,-@]T^AP35]T M9EQE1^1.K*^\:@YN[H78K7L(;V96+I@(7R^O40$C^Q/T+ 9@D@&J>V1>@P$L M3=3=OM[2'+F'=RFJG*67X7WH<1AZU<8"U8>ME)T6XN#M2C EW?D9?,<"/$OV-,>Q^#F)L&*"$ M_7LVJ"X.3F4J<7'P75J8YR@9K>D^C3U(N=ENJ9MLMC>?75%:Y)&'9IL 3 7_ M!S>S7QT?8/61QDG$7!ZXP1?KP*M_(+54_ +3<$(.4A.:5T:S"=@@AKTIM1WJ M])E,L*8JI"(@%ASM ZM5!IX2QQ6IA,F^A-<)IY])'>Q$6+AM30M;B_*$;EX< MB=O<+0PJ_J!J*\Z'M*-L]D C%GKG^4UD#:#ZBF2BDX8D2RM2*G RJV0ZV(FD%_8[B6@\,QW[\N:% M*7ZC+QRUC8/PEXJI6"!R$I@["B"Z"5J/(>R;KQ&KB),0RC_G 7"RI^2-.F=[ MD@9M])0X4;)0*[W0'0L"F#];;#4?U#^EQZ-/12YM'^1^[X>?;H-M&!W$UEC' MHTS]WLCANZ<99*#6[(H8DOMJ,-0O9#X9I (G(K&R_N!Q-E-\?'BXN_EP<_^\ MOB/7MT]7=YNGCX\W3V3SGERMG_Y,WM]M?B&W]^\WCQ_6S[>;>YOY?KG5.%8^ M.,R[;RFT>MH*N<S!*DF'I]?-Z)&'ALL(\WBB:94$WL#="G%S MC.74K:;1#@_TV?E,XR[/:FB(WKE4RITDOCYIA=K%E,*.2&+-21)!TZJG&=?L MU-F$G@EP$-4J(/3EKI3"=:>LSCBU>.7ID>WVR6;[,:_BL7E)'!; 26RQ]0/7 M-VK5/KJ*CXVCB-RW#9BK]I!I.#G$:&%"J\$7A('W1;B]^%C4T"$%?]AO++=M MP35/2^Y,6[E,HYZ&3<,)4;$9EFP7TTVDE)YM)E[C'FWJ:HW;[2[8P8=?KK,/@((^,D96>#_:[JRI7@9GTU/Y\] MVM;S]YM[L:2_O?_YYNGY]OXGLKZ_)N]O[]?W5^)?5\^W/]\^W]X\V4.1\OIY M7D^VJ" ?>%6E$H61-;LBQXX^!I!A0Z8HHT<)XR:4 82(X01(XU9_0;'+4Z21N+AY&4:0^8DFY&[D&6SK>ZA MJ\*8IH;(_42M7"WH/FN%> 2W"#M^.,I)/Y_IYX1<\I'W-UMQ\Y2:VG>\M>M" MH6:^"'C@*.0RVC6WM79 [HC=RLH.J6Z-V#$UA!Z:FQVY$&J?%.%%+@@<\-8:%K(@B"]06!(OP+UW6/2SXZ?TFL6N'\9IU!E+ M='1!#D@Z"LM T]8>,8!HB3UT. -Q(JB3#]0!V@A'<=?\V]5G@>.X=<9L[;"P MD6P.F:6A+-%',&_-IC8.#WZDKS1(*>3\@@1# %._L&1_E<9)>*!1QY2DWQNY M5_5X/AT9C@@W:P=\U[BWSF>Z?9<[X$VN/P2C+/UC MP8I\XKQ(P6SZ*4_G[O+,!K$' 3^%H?>)^3Y?@]X&"5>"O?C9A>VXFO [9KV^ M-)"#P2"3R(C0BP!B6!BFQU!7*+B)#9V*7_;NP6)$J&6%KJFR-Y$OP4=:I\U^ M%);N)>9FC'8WD1:/*"925,:Q6E4![BG#3N_:=:/4\;LV-]M[($<'#75/BBFH MFB/V>QVIAX[C?(.^O&8OQK/@0KWR99_5U+Z%A+F A1&H)TFG/ST.IX;<$T:: MJ>%"7U]2B#UHK$93>]>LDVGG1BQV:UE\\D9?$NW%JK(Q.:K*,(SM8MGRO4=>R:#]6M%S5*6^\.(KDE^=A'3/L<'I?EH^9G*N;G$RLB7+^4I$J;),Z.KO93;8$ M)[NA[T,*F3R)I$:&I=9.R %&3^G37$KJ'HA!0E/P,5F3*O*DH&]Q0']@01BQ MY*T017]2U>N)?&CW4%\>WQK=$ _R/M(;'NFXIC:+AK 98)=:BKKT1QK$XN'H M(_6A!O95R*5[VCL1!06\HH1MUQIV+%'D0&'&:/7$86,H(H870XH-SL0'Y=@O M+D4F3YG] ASN4C9(YZ)V--4OQ>7:S3;(YYI)?@E.UZ'9\+1WY;P>;FM^1W(1 MB)!A1804%\+W25G)W7XL8-N ^&"K3 NOO9'=W@,YW&BHVUB[8%$;S3I2FZAF M@&K4=LVD'5V6-VY;Y\"V]LL:N>; MQJZN!:H,RD]S%^/$3MP+^14__CM'X0/ MPB=5EMUUX-TX$52Z@Q*K8NY4S!]]^B'UQMZJ@TMJ=[+LEU[HBHUW$9 ,_>T, M[*00CVY9P++T8*\.\^%BV=>3N&83%,VG:I5$&DZ("C90ECD+GV=RU^XI="") MI3IQQQ0[I/^277N*6>EY3PF7A_'YUZNF8BB[XI5.(0I+P2=RAG5:>,F1>TD, MXB%"ADG.1CM DMQ>4'$[>[L.D:UW=V0DIGO93NE93 MM[4'XF6*IN"C=HER\K\G&0-L@UE_X=VG_R*'N.:27+OSX@;^%.#>Y ,$F.&8 M\' 8Q!XHB")Z7S4K(/UUL@=E2%H$,'WYWE\H=W-(XIK5>$[#P[ M[>R$?CCJ*%T?GFT]4 ]7+<&'#U\@OSJM@XKA1')RS>TZ[E5X.+"DS&0;BL2R M-'#[O)SI2P.Y6P\RB>SEO0@@=OIA>@Q^7E9QR])"R_S.-I&0>4C75->;R)?@ M(ZU383\*2_<2@Z\PV]P$U]H+DV4L;L_0'(2 M[%3)SJFHI?W"AFO[M*-JO* !:W"*.1VQ&.:5^;2UZ)[NGGJI3S?;LMY(EK.5 MK_JD''-YC1!O$SQ2-XTB/LU>0NG,9Y@2.UW:, _L,#"%26O089(!9KB91,_! M3IM+ Z^SJNHYJR+_,^Q:R"DL"ZF(>+^5RT6$8!S;1"1I'^'0&GC+ B=PF>,3 MIS*O+YGWTYZY>P)W]"*.I P,G83DA9)#876.X1:U6W*_>'$X>9=F#N)6 MU3A5[6:^T3N7L9I+VN3@;!UO9S6%#*,GHV!B%"RFC+=A2*CNOC0T[#!$*R(J M^BX1%;M4F0@9Y3"A$QZ;&B/ R*E,I\+)DA]>K)S*)(UXZ:-(K\YB9[>+Z$YX MW6:;URS36G/K]D4*K8-,<)*GI+LCXK5O/_E'Y!R1N( '%(4";#5;?/RQE>2$0O3F'"'I[LPLGLSH5RZ%Z67]'?AFGH@QP$-=9MWR,Z:(_9Y M':E-C/"R6! V5\IS6V*G62*J#1%RDV!P;7?PU-]>L=>Z5D1M[X; M[STH+08*>IM'L8FN2V81T-%?&R,;XH+KA6#;4!P1'ZS,:*;T<'"B-[ 2JPPC M-F2D2&)%G$-6[0E6JLF>MWBED;.C\#E'I;]G41[!G6*=!8"'PIV^,YB"NJ_<"H*N' M$B9\IZGN)C; F<,D57CFY!9!L?E;F0!JPDFE6_31H:7C8E"A2_EF-%#U6@0* M= IOPOOOPF!WP?WP0$011+FD$CX0F,4B?FD1#RPB#@RSJHE;QT4%!T5!I_RN M5E)>WNH9/?2AM"# Z&D>%8)HDED(I/35QH1'2:7'BDN2B71U$B70V+!3=4TQ MAG]R!3D$E:8KSJ3AWH+KIQX/4%@@=HBNPL"#!8YX+AN'/O/$4N@RN\9 GO84 MR3JGL0#>3PX+[L(XO@V>$BXW?":VY;)[GP\TXLNV R@R!-#&\ED@W!DQ;1<8 MCF*R,*@TH^O@H_G&NHTK J*0=R#,5Z@!U*[U9'B5L)1)82[<@&H'TE): #5R@KJY49BJI2H)OMST[$X.6?H;R_N=\K+%?'[5@";.W3\,R^YE352'FGP.\O.;2PR9T5L,1TG,G;^3= MS[D@K_91BCW7]/M*HY>PY;+L0G^:OX;<'0@\?Q4NU.0_YPN>P]$)SEPC MKLW3;+IY^LJ)HCACC+ MF?>M6L=L+ !0Y>;J9/LZQ:>*QZPFXX3JY6P%B]9BA47^J/(D52B0[UC"L6GS M<^^!,46IC;S8M+VL_])^Q-[^J!EWY._%2(QFH_4^#%ZY\:GWR/\W8B[_2Z2V MA[O=<1X4MK_.-$43:81@U&3-FZ4#""YB8W2,7B:\N.1/*@&(D$ \78B+%9[] M)XSX;)<* ^4K*XN5++K5T0(X:NY.,KDQ4, MT#C\U*K7GBH[\;ZEH!^&:.2T3ATD#7)YX'C-_#31]/WAU)!CPD@S-<<>O4@A MQI"Q&IEPL/.:ARN1OLL5RX68-1RD:VK M,&X_*NUNC1QF.M0\J[]UWA0Q3'1)/*JPSXH 930./I6NTOUW\-\P*,Y1?&!8 MO*$Q>)S25)2I1^:H?MV1>N=00Y2G"CWZ8C\"&*+*X/WZ/25)Q_E]-NZE[<"9 M=\_GM$?&Z[1T&[9L4'-:1(+#EB&!875U6O;@-A#7Z,#-+M_R+_575WVI(056 M0V9J7EWU(H4X;!JKD8FUPGE-$8GW"M*Q%"UL0Q FJQ6YJ6!1M8O"F*^DHG#+ M$K!7G#&>Y.++O0.7=#;;RS1F 4=C\9.TGQJJNB %CCX*-]SM:&R/$ )ZB6WD MU,9)\@BKX)$[])D7CQBHIVK<\?^]3>@A;M*^K3'FP=FI9#DLE2VQ#LAN@8<. MQ:;A!]2)(&\CF)U35WMAZGUZ>*$1I&LLZF859;,4LVMK!Z1NJ:^L'$^J6R-T MSQY"#QZV@G26>[2SR-H\H=XLVD:5MK'UDG(?6!!&?#5=7-_:? JXD?;L^$"Y M<8/$V='+MP(PFR'ALNZ40!<)A M1'H4=TA*B8"EX^[)&W6B^2LJS?#+G /IBE3+>\ZJK*\T\S;&C#:X;QZ./3P'.BO_#Q%=\&OT!!4%FWGW(?>"K&>K5X*!4QP M6^SL851YX[..FTLG8%V ?%:)MSX;-K&C5[/I;A?M_J-CJ7NM@27T9!^\$*\ M(DQ*RN17H(UAM#?I?1T>''8:(?;KN931WJU^XVA7=UO":->0WBSTRP,_8V3I M-MJ\)ECUM(%=]X_+V?D#A1"[APD;NBX0 %0&Z$* TWX+@P"E^(;#/RGZ^S7C MA @$C!NAI(? R2_?RC__S&C$W63_=D=?N;=I!;7MG9?BZ%I&4(2V+3V7X.QZ M"IB8[TKR* /<^-P,O4/=-AI+<84^)NF<_%0$EN 8O?0P/1U*GTMN@RX\GL4P MW0:P@!RWP3%-8@&4W^F%Q(T]EH(*:G4;,>"\^1(\OD5J \,XHTXR\EBBW E4 M_L\TA*LC#Q%S15&5K$(#QS/"YQ';\HK/-.B$"^L_CNM\DF M/_1V[1^6[-H_]'/M'Q;IVJ=2&W;M'Q"ZMBF5G]@N8%ONMT%"/@;A2TRCU[SV ME3! [L4_8/#B$0===QVOJ$WS6 I2F#2IZ0/8NP4\[YY&3Q-+S0C $S\D1VC>K.W>05DSVH#&S2FFDZS(3]OHE3B+'5>5XTNF'',*T59=A MJ;,38JC1EWWH\,XXK.2=BHH+^;7@8PD*YM+?XF5X)]YS (/_W/R6LE=X3-*H ML<)"??HC]^[>IJC=F=?MC-C;^^LP^'8IU!^# $#\(3%3 (&E^_7SVT,49J,5 M,[.W["'?.*<*Q7291[,;M * 2IU.+-&K(U+W[J^\?-V^N]<";MSW4,) F)H] M%\EY9CE?"J99S>3Y;\O/8("*"ZFQR19%,J[9N3,_KPEJO[J]Z*;(97T5'EY8 M((11F2**N-+9VNIJ#W_>!NL#O 79;-NLIWHQ. ]GI)!KP?QR+#8#6\11W)S: M#T6*,I^^)"24S%-!J"0H;R9$%4="0ECQ($G1-=^3LA,_+N&7J(RIFK,M5MFL MMMWZ;S=I=T:.H?V,4"O)J=43,9+U5&"H"TALL.Y#S6\)>UY_32.^^H6S_E+5 MS;;ZL*S=IS!5C^[(/;^O(63?U^V+V/M[JS!TU%]2A1B0BR47A$B2D$J4%2F$(9DTHKBW)(_]E"VC37K7<0O8*(,O MW;7/C&G4O>\6388R+5RXGMM<*KB63O1ESL6=0>ABZ3[VW!9:3S68[(:AXNC@ M*CVDOKBR<.4D[O[C<>W]E7\/3OT(S"5QE1ZP@LQL=/9!5-G*&6KAB0"FYT.N/;3 M+^DX_'1(LB ?5@I^4@3#CGG,9E>#^1.JJ%NTZ9< M0W/$;JHC]>A-LHHX*:G;W=^:0EU."9)I0W7GDKH]9[T-.%IPVF_OP^@N#';/ M-#H4VL>;Z"$*=Y&CO%.KWQNY$_).7Y,W@5A0MYHPH/M.'%@1A^4G5NQHW(; MN!'EK*]I]M_;0+F5?P^[^4V1]2A"2'%@O''*G9-!5+#OF(Q3:OR1#LOYDW=> M+L%712J=ZGRMJ"&>);\C ?\_-Y-DYBT2.]:Z+6UT+=NH^0PR?P+-V=M9$:&P M4_-8<@9G"AYR"^Z:;BG7R\NWB%H@=Q@9S( [PC!ZM^"::6 'VS$JC8=::2?P MA?) C1+'=:.4>L2'Y"QPL,YB<0LA(%S,(.;RD%T8>A"]0841YHK=[!*-(=C[ MM&?N_B1%Z=Z).0=:K(.H(,!B:5FT(J[/O9&)FZJ\M1TTM_%S:-RR*SA7=T3L M ;D-$Y7ZC]CP&@+8Z\P;[K@S/!2^,!2UVVDM%KHU3*2'WRV$%@WB.GH-1O)F MM';#PS$,Z!G&_7;!:E0>$JX?:712SAZ'\2X MJ0IVM5%4#!NKJ6E;U2\OTQ3W4CH.\;2)((7F<4;I>A"BIH#XQ&J@(A.NQJM[ M:057/"\S)K1,P\-C^77;&:J\$2?ARX4="X+\ZK#M"V77+'9VNXCN\O(ZNB"'$1V%:QFN6]HCA@@ML0?/G#7B,(P+1[">1TVA]UU'=C2-;LL* M:XSMNP7D)],6?8(Q?F<[B9@]Y>TY]I.[IU[JT\WVIS#T/C'?;YNCU*V1NW&' MFK+W*IHB=MHNB8<.UX(N#-2"LOVIJ)"D:^YI:H=\E"I5D\?G62/$(U,MZ] Q M68U#Z]/%=,IAF [>LX E?.Y[A<12"=>'<;?/REWKS1 :!)"[8W]C-,\C7;T1 M._ )4S,-AFS"\&-5.RRZV6Q_3FHQ1B7;Q^S4CP)R1QE@ M#ME3>G1'["I#M!CJ*QW^\?)&!$,B.))?@2=.;ZGL MTV863<]I(K%,[VG59)P'$94'R>X#7,FO&5]+H:8=ZZCP9:5OGOE YCER/ JR MQ!_HX85&"DLV-$,.$RK%9!PX;8/8T96B#LZT"03%*.0S74;3DI=.HUK "5H\ M,\]/^QZIGZ4)V;-CNX>U]T#N;!KJUHZ^U%ODY)'.6RN.ML0[,K\2#D5ZB3_1#I']TY-9K" I/OS] M[=3>_C&FV]2_8UO5F8IFU\5Z^[D!]+R]ZK=(;V\0?Q)O7Y&,$P%6V)S=H!%^ MH6RWAPR#ZU<:05K")GTQ.'PLXY]Z7,HH87]OJZLYB-!R_;[#.)I(H*"R M3&SH4F8JM)#X$IFQ60#Y,;-- %==J3<00J8RD:X)YL,568K-]M0."LMU=D*. M%WI*R]C0W@,Q#F@*/N(U;TD>KD^=N;V=Z&!.K2&]>!#3[$7S A;]\?LT22,J MZW"3J;!^B=M*FXTDB1P33!A,,YKHI(<83XRH-56$<0];#C7GS"58D?:OA63X=B*G-^9-G+"#B$2V@A<4#3U'-4B3LPQ8:[!55I_" MHQ%<(H;?'W[^ =&@/N7E@EQ?\^FNG#3)+A/R>FLWV=JJ$?1*6;*;[24"HD.[ MV>P(*93(NZID3 "'48/1/3%V2\!?TQ9BB/.62U&U,C"V?<_#NZB]N6ABVRFD?@"I+XLA*EI M9 -C0(#%H(P1:W&<^7Y)./.>F]Z8"7-B7QS*R$8:!S) Z8O"F)I"%B &^"\% M88S8B@/,#XL"&-[6G 4S8E\>P$A&&@DPO.V7!3"R0C8 AO=9#,"8L!4'F#\L M!6#66VY%HRAS2O&+@II&5HKKW23P9ZF?Z16 M(]/T>ZFHFA+7B!,G@"I%4$"88PMW0@^.4LK*'#.M$-13F<'.JE3CB=OQZ>N5YG,!%\?- ,M.?YES)"PWHEMF\9;@YBFJ P>X.R@EUE$_3 M[H3J8T^LM\9L;43/EO)C,VE:1&!A M^4O[HO!861;(^OKC-HC3"-;:[:"E;HTK5\H6>-T/LB&W2 M#CYA )K5MIY5!YQ"OZLP.H9\5H0RG&YXH"01"D.H'R9[&F7_MAC<@Q#*K0M5 M/-'5";EWZBE="^Y;>R#V64W!!P?W8@RW[) @!.I6"$HTU+7_:ZK6*6R M]:+&[9F:ZK%[MX!LF5T2#QW#)Z,504;,J32]BJC'$N)$? VVLYWTMJYDD=@K MN^>@99>S+HMRSF:%U1Y:;[\8-U6(/70$U^<8JQGO)M7S.4P?97DQO>RSQ$[)4O%R^=X&_P?YOM+S1.UH%W>WGS>+N^ M7-__1W%ZSL*@L7:>4<)(/=:\\:HW@B:HHG\R:%3)X0^VCG#I*GNIM0VC0_;4 M^$BC)$^^F(0DV=,B,"L+XV5/X7*1"B*)/_>[013& M/D6S7TY-F/W/9IM9;PW6(Y?DACSR_Z[Y7VMR3VIFM%2-$9]-RVJ0D\X,5T[@ M>,P)0+L^P-_8;UFXKE:]!;;/.RT/E5MTF!1T<\#=%F A\-8AA3CDAWEU=64&HVM4^A"GA8!:>I-?\EC/X&T].50>OH;/J9]%@78"0,M:V[Z!4UQ.:/5<15/D#MNFX/GM MFGH[Q.[9*NZXFR2P@YZ/3[O..(F.5^'A0".7\?67?WIQQI@;QE$BN2#_UZG[ M\8_^ZQ$>C#0LM4Z_0^I@C2J 1]6^0.A"S?(-QG2@9'I]I#]^&A'[_%OL8^@< MET^^PCR.3$4'V4BR KD3Z6)ZA:+E%Q]8P [I0>D9I]\C]HU&50KOJ'V)U#^: M91PZJG)J%GUD$GWLOA?]A;+=/J'>^I5&SH[>!MP -$X>G:0M_4![+Z0NU5/M MTX>C+5T0NE]?R<<\]5Z1@@/)69""!P$F]EZ33JEYJ;.3Z\P*G45JH'=.3!RX MEN#2(+%8>?>.!;181)4;&LYG0)[+,(K"3[#=X1SY-\F;:B76CP1R]Q]BD-I6 M08_^B(%AD!J#MQ8@_T/U.J?@MR(Y1U*R) 5/2YL.2P,WE,G2:/3F;Y//Z3.WEOU\N**3B?LEU=ZZ3#X M&>F>YH4J2+)W$G%Q.7N=725^<9T 8[+K-8IV1" M;F7]2SXD9V3AILO,^I___A-<-Y8CNZ=/SK&\TOR0!6 \/MML(2*4'F#>!K_L MF;LONMY\=O>P;^$UVT">00[2MKVL^\74-W6ZIF[!7ZK\16H@X+XBC,FYMM4M G.I-Q8I4$L'9 MFKBK(@G%YP3FK1]E!],/0?HO"5Q=!J'LWB(P<6 'LX;AD+N2)*4 MA+ O4LJZ(EE,(.XB9?*28RFP> E>_7/%0VX@',/1@W3&D,?R(I<8_P(T@J>0 M+Y1XN5+\ZRUT*1;B6\8M*.Y"N;DU9]Z)6=Q/>I+8>$4*F)LL/=M:_@$+%?CZ86MA3;"XG^GTQQCJ:@/\"T?<7<1CC_20 M/8H><]372@3I%#[.*%W'?6H*"XG_>RAB?(50\D1]Z#>A9=:O#O.A>H.A@S]3 MEX%$ A+V2J4R$^O ^S/U=I"M$/;[1+T5#M2N'\8I_RG:JY0,IX<<5$:;JGZU M:" QQ% S7J?A 5K!N58M!:;UG#FIN!.)/8:"*OV-=M=9=F4;]INFMD'& :(>&3M_36-$^K5!9:WC1\B%KCLZ/@/SIN MF$T E5'N0J=QXAM+$*EGFS-6&>.,HH8]_C&CW.#+L+43A&/!B1PS5G!$(=+[ M^)S9*K]YQ_@"*1>:>.&G@%"'?_I;ZD20I"$)H>8DH$]^\SHXN0R49Y*&.U,S M!UEV35UP/X7BTVMXI0RD$()L @)B$)##0H1FUVZGE\FRL3?TEO94$1M?9VM/ M>EE;I/BMI6)[-,8;+BH"D^4U&75A";),Z%;ZM_=5CGO ML!Q75"BK\,>3ULMP2I70XSUS18 XQ#359]9]U+2ZZS+*$LH^4C?=E:K:HO<8UM5E)VUL2%B/VV7=WB(%^0WGOSLW4G^7,#Z MR>>INF='=!WFN5O.B66GJFW#]OQ<"?_0-7<6IAR^=[;/"&?7V>*T\N!$2< - MDF>QAW?#?"*\9G#A\B45-RX55M+KB=Q_>Z@O>[)&-\0^W4?ZP5MD.8_?E_41 M]QR536ZNZ& MW$88K\ M*^3.*2M0*VO,/T?L9#7QAH^E>&^I1/%4XL^XG9E2+\GSC\OWZHV^9GH^I,3>6U[G2;I M(X< XZ:4$<,8<<0 8U['H0Y:2 (G#H+/!7SN$5D:(HM#7MYJ#7.1B)#)_I;O M [?#O7-HJS5XT@2YKS4I5%L=2M\C'O&-8@Y>]?%^!*A9+R!8J-5:./"LT4*& MG+I08+W% H:=H8)YTL"S6@]P=K5&W+R]^2T51QAPVXR]4N#%G>D'=47KK@Y( MO4=?V?)F;&MK[#=?]80?G@28Q83Z(N8@4?T)$+ A&7M2\B=B$.>W4^&CY&WF M^ZG3&J117V$)B[6M9U$9J-J;X;-8^ZVU>O5I&Z0(U:J2/+W7&B">W9OE''SU M2JQ@LAJXEL/*X:O"RB2!IQ6<3L0*N0M,:>#:9L8$?! [Y*3J#M[B (;DLF-; MXS+?UL@;UKDM#]V\> )?'CT\>. M8N+M?9"#FY;*]6+B+1T0PXV>W&.3_7$T$.2)H$\>R1/Y:+V>^/R*(XZ&5"AW MUW'?UPAAY&!@SGB]XII.JHAAQ:!RHV*6CJ.8CI.8.]NWES&8$> K-X\K";% M+"NV6LH,*)MD3Z/GO1-LCN+BUT^<1!+?!@\T8N%IK2$+[+]47!SX0QA!SYZ\ MOT2,'6H":TB\JK:JJ^Q%0F@H;Q>07.P5R02'$DF9Z M#[;E_&$&.DJK/"6;DCG=$L_0SE M*>9\K+$?B5JPQ/BD>J^"+*'9)"4G50RK22H\YC4/*G%F/EU=D&T-A Q)SKL(X2T< B_HESD;]>G0G2W3LV%G./ <@B6*;)N"R.FVEAT) MOLA9<=3/,7YF',3^BYT=QUEC^ TD.=EP-CWF8%VDUV,R)M//KI\*1([%IOF[ M,!+P\E4Q>:ZR(X+4+24R=3.3S'?&OPY%/-I,9N6M^)G?D*Z MQ!^ILEBVU$PR4WZ)6ZT\<'E5+TQM\$;9;3UA_@^YW:JR 7ZL+R6W MLW9:WD]3(7P:C%T_&;J$VCU?K9Z(8:VG M H-O!A=LU$\D:5$DW*TI9IU.$5?P>-N5!#E;6?RH9_ZP)@QA2[=MD M\,7C7'*2BZX$:RGTRT+&>%4':-0>[L0?E4CEG5J""KMP/]R?[*/035] MU"YH%=/+%SBG9.?Y[\,H_PC:?3?W+ZL2XA]U]FC]46:9,AHE^$><)]H-87]R M )D;9XA,<%&33A+]"YL2IOEU M'9\&B=C*;MJ<[^R!%$E[J%L5\&IMCOW845/ZX8]E%.5)Q=88<3+N_%\>_]C+ MA1#'B9D4\=Q5M*8U1TZ>%/1)Q6#"BYH=!;#F4;GAQ[6]/WJSW5(WJS'-$90^ M.Y\?G80"= >NR/4'.\W)>\K'IN,_<1]*N2!OM<:J"<8(9:0@.8'Y:C'D>+*8 M T.#V@V.]@H92$:7<,($*).Z'"NH=N'P"(!K,T8W3C5U'MQ M<-2JQ/2H@Q!/)K9(B1-\_99#QPOE2V5*CE'XRF)8U\'*N8(5"D^ABBMU^<=. MDB6ZAR2CL%H,Z@G_69'PWP :J;+9:1MOO>7"G%;P:0I/QY-$BD(F#5;ES!M' M#_MJU91Z!I:S#A&/\ .'8LY2%"@F!,7&<6;J3A@E;S(,'P%5 ^Y MD4I\F#LQH.7?5#TO53*0S:D-"S'*,BIS/[%$9KM!,Y@3>!8FJ=)6V;[J9INM M"NAF>\<.+ .?./L4$D"]YTJP7?#O:<1BC[GB6VY(=D@/33^)4>J8IR[S9BQG M,7.DL4]H$VAJ:*OVD)$M)AP^=V6K6Y$+WZ^$*[ZAPINWF8#DK[*$,T\HB&PJ MS2CY(<5$KJ M7_JD4C>CT4DE(_V/,*F<:&IJ4LG(_H-.*H9L:GI2R<1:Z*1BR*8?S U,>YO[ M]S3)3'H7QO'Z)4XBQU75V%.U13HY:*DH[\XW-D2\$=\N[^ W230I=C7> >&O MR/IDM^G!@4IVY->"I:5LB!.IS^?)"+SM3V8CO4B\/!/7P0YAD+T0E@W['&:? MW<9Q2KWG\#;PZ)'R_X'BU1%U.:OX(UQY.7^Z)F6G5D#F;,R10H&='T$.(^?A MO( H/[;UE3V ^E8F=4A LY#V$#@%Q668&WS\V07X$3C4D] MCX8CV6+^J'WY>\A24RN3WX/T?BTZ($DMYVH>2&_ MR?509[ 70NL;5W/6-DH8Z8QLWGAR)#^>*N*PWZ!RTR-GZ<\WI3\WYIFPAH^( MK-J ?5%5."++@67[^K,3!2S8Q0_5/,#<=>!=9^%.QP:"?F_DJ-73#+4K@'I= M$>-/7PT&7Q3(^<".908:*R)XB7VTG)OU78BYK/'.%WLQM##*L8S\3R\#/?"( M+XQ8/&@#PU"BL+(:^YJOTZ5*A, M>E':-&[,*[L8Q%N+&]_3F+RD_65C7=V$!H$N(_SEHMR)?I8A;D4R>1:);@9- MB0?:JH#Y,HTY?,?QVOTM9;$X%(LOWZ1_Z2W9M,D@!ZRAAFE>=NG10 Q#@U4Q ML70J6!*9YPK>/4D?C%D8*6YWW(7![IE&AT M>6AIB_V6@H[HPVM@L)A0/TNZ'=4O&0#?"V!,2LX$6!>7!N"CY&WFX_PIC0&T M29/"=FJ!3Z_O\Z/0SV1Y)#@5VH>^QY7*TI>K-DXTFF/&'@U%JRI!ZK8(YTYM MD4?5;,YI%ZG\[6TBS*KN[_,R0_8BY_PP&62JEX=Y<**?'3^%6^HB"^PUBUT_ MC%,X=&X_1AU)$JF7FS28'%V/H8<0+8RJ-2)OO;CS =S/*SNMX(8X$4*(H]HL MJ[,DA_5#6S3&L[BB!_;99;_K-&+!+GM0DYFA3'8*C1ZX^?=<10HQ!8S4:-<,7MW$SSOFSME4)055Z8M&X$$#$WY:NF%DS5W8U MC^.SFT%/=I4LOU";75J&]:4/Z\\$EF,L@ 0:L/%X'+AB;2@*=V0LL#)TU]IH FP;H=F5 !T\2FR@Y*(#\YY4@C'M+0SYQ\L*,B M[4_<#%L97CD"K8@AM%)LKES3+8TB91FY/.>@LX-[1*\TXG]\<**_T>2*AXQ@ MQ8BY-/X84^\VN*8@*H.3HB+BE(+0Y[V37(6I[UW2PL3>Y1L/1A/FLJ.C>-B' M2SRD.(G04O7-*D2R8=^8QV@J P\,CZ7< '9.)CDY"-&)F\E.CD)XDL894GJ5 M_%*&_!I0BMK8+FA!7C@T%GK >=A1TF3F\X0OZ3?*:=TR[V@_/]!MN;O%.JG-W$C6CA MO1CV21Y+:1ZB^;NBTT,UPE@LG?@ M'EI4;KK&9RB2R8H&2+QUX#W2!$0^W['6,W\7B65!BI9!6G"EM?]RP$5/#5,( MXXE3Y)Q?\WD/"J29UBK54C#'E,H\RT83LW?D,-+7 M$,K-BY:^B &DMPIFMC5(P6I5;N.*NM7EHS4$FQQ36J,3-P!:^3+'I;[?B2+D M79F^Q&)APSL:QY3F]6Z"W1VW)+WYS.*$@Q^&"&XK4O(C@N&*E"PA[L^8PMY"QI;\FD0I)5O'C\_? ML\T#/_.:*2,7@P5H9@$?&%H\*FG2_Y$&])/CPR.B'E:K]UH@3#2HW04,4I>% M04&3Y,:=/V(YQ# -Q$0?J=@#]HLZFO2%9=SG05V&/QH;(!Z5:.7E4GK="/"Q;A!T> M[)Q,!T#5SC0PJ79(/&[-9[HD7@?>'7->F"]ROF337\>LH-41N4?J*U_+J=39 M"['']A!^\):)8"$V1B0F*Y*QL7X_9@8+G'JY7W'",K<6RK]=I1&4-1*5P^"J MXF;[G@5.X#+'?PBSW#%B&1NS%Y_WTIR11Y%'CAJF#:F>_8?31HQ QE4T%FF4 MLO"@(Y-F14IY($HN)2*%2.372B@"4EG,/*LP[#T?T=/Z^$ .RW3S,>;4\/0A MY)?G[*.TG,+?*X&^!)?O]V,LUA5[N-7R7&3"X3Y-W!TFCJ^_FIY"S\Y@VXBB MKS1Z"?ML')A3]1ELC UM&*2/$56!XNNT:]>@)XE%XE*[0;K!JKG_XA"L0PU# ML%;?8B@8$L[1^D;#K&9YGR9I1 D\P8/BW!D4'@MS9-=2@C"XR*ZJB)HY81TX M;1XGAW%\%08@"^7!%HW;DBDK&R,'BW8E:P=3C2T1 T"'P,/SI,8QJ=&U7][E M3-6[CH(MK1V6-F3/E&T=MG>(LX_V$-KD\+VS7<-D0GWAE3I+L@E'W(J4V9C, M.\XGT9UX8?]$DR3+*5U,J9=O\!(_\. E^6UP\_E(H8@D'-TUII(93@JIYYHP M4)7+?!@=[.E4QJHU]BIQ%+XR+TM\X)7,LC10&3ON.3'D1@\_.9$G4M3%I:!S MIT&W9*N*+ZD82_$]M]UUS78%>W%=8/:%O]UQM8LH5_PHV2:F'".\:GC51A?4 M^_589MS:2*M&F<7XJL&(F>.L048HT2XRU$+&$]4^9U\:2+%\E$EJ@5D? IAC MM4%Z&(8@FT_\YS7 C0HP".3T&845G9&=0,:KL 2P*B=1._*V]D/JY[U5;PC0 MU)V6$XUIZ& @ZQR$4_7,V47(6894C84H\/!R=X*TG%I[W610.*E168^!) MA\7AGTI^#-B72X<']DP;JP'R,HUQP9UIM5NA[NQ'GW@O[Y$>')%)KX MEXX/AU:Z2VYU]V7@GK8A6O?I%'V7@X;ZJHS MWD+64D@#P/],]BSR+B!MZ9O8YH8CW#"ROS4WE:D:U\*DY$9R=B3G9Q4BI[?& MHVJX3 R,Q8+\L5J/-SR1&]!]:<#888A68%3T72(P=JEB*&)T2IP4=_Q:-I(1 M'$Y,91/%;F"Y1R;QL_!B<79S*/<+@)5]@QUEY%JA+ER9QX@0>A]TFY=L: M8X:W3B5+,%.VQ Y=W8(;!ZH78%E4^H*["&'%=6:0FDY[07E5%%T2%273'C4T\#M(9>#?VP8U=? M-0;?[*_!%\LYP+%]\9S!WE;;M)HK JM;R003/USI'51-88;;II]\^HVV(G:[ MR?)0]%A9G_=<&HRIU>_:63OIMD00:]'"#(;)"X,\RPG@&CRR]!! V03Z*Y!, M7AG>-*=[L;<_9MH&CR?+08N/2I[W$RC!)2.#1@GEIV]OYD$-\P&Z/-X&SM.4\ S9PP*=D2B>\*;G86+:P_ MA"E?R5^F,0MH'.>2Q>O/3%TCI;T/=I?14;E>NJ"E V8WT))[\(#/B9%?@9S- M(9P)3:)3K%1JQ&KQ MX78=>#-+5"#1=*M2JT.&N"'BS4$H_$"@"! BW8D?KPV!E XB.DG]A% M81IXMD!B IT%0GQ$@1 3:)?_?@8QXB.7\KH3(QI;8<8(M5HE1IPWP8X1+1*; MPXB/29X01X#$-8.PXB45>X=V4&("K3\*E+C&@!)3:)F M1D@=M%VI,@(X:X$] % +/.862?V-:I3Q$.& >("0?S!S*&!>U9SBRN[C4O-Z M_7?XU42N8I(3MY*/:2+%%"J- +N?HC".'Z)PRY)U7(DK74(0')MTU.^*&1A[ M&J"$2\U^V$&TKQJ&GDOL@"VDH^-\84+/OH/K]#%Q3C X ]ZXG/UM /!<9A)\ M2,8(;%%_'%^%@=,A6SM@SV6'L6AG^AI?+DK\G@,'E."( L>_2N,D/'!S03VO M,-C=L5?J916^]&[T#22*%$W-&JWYGM\0BIC7CF84,W'[KQ" P(])"A%(*4-6 M4H]+<2'$('FA/=-7 >,HD=R3_^O4-?E'U16QGVBXBYSCGKF.WW#UKZLM4D?2 M4A'\H[4APF&O)^_@J5,B:/IZG]ZPS*9 68[&ZWU=;3$/RRX5RV&I:HAU6';* M.W;7JCX\K=P%G%91+05'K%3OP^!CP/@:04!(K#Z>4S5$ZE?=RI5KSL96V%>8 M[4(;6$]&=,=9QX1^=OW4$X=W<, O>&8%]>9.#C*-RIQJ72N;!WB3J7A14]'> MVJ]G1'YVQ'42ZH\@AQ2W3!E*7ND-I84PJC"FTL@=_MXKNCO;AXGV+0:6R78= MG[WI2TQ_2[EB-Z^TXTUVB WFZX6 MIXUK!@75 B^^<0L:SD?)X(U:3#X"D)W;\U M'C.VM4/N@4K59.\[:X38\]2R#@YM!$4B2%HZ8IM'.7L.MO8\!MNJCO_@,.\V MN'*.+''\5F?KZH/<\;14EIVPM0-BA]23>^CXK:@3($]N Y(SL.RJLZI]P4JU M;9Z0PV-IZMTX$3R9;KZ1T]D8N=NV*UD_NVYJB=A1.P0>?HJ:D24%7: M%F=3UTT/J<]7RYXHP0VA=$3W-(C9*[T-W/! VV?6'OV1NVMO4]1F7-W.B)VZ MOPZ#IZ2*$Q&L2(T7R9C9GI6QF>/=71C'7]G#BGON0U T,O1]\4Z?6Y#&S;EN M-+L@1P0=A640:&N/V.^UQ!YQ+5,B3@KJEGU[:I6Y Y_K/.^3DLVG@%MASXZ* MUTVGWR/U1:4JQ7.1VI<(O4PMX]#Q55*S\E2IY*Y\H'3>8@ECJ_DQTLG7V,>7 MH7UU:819>VTTOTYCDO\YD1^_.!Z'_3B)4JBJ'?][R(+D9QHD:=2\ANK7$ZD/ M#5"_2ARHU0W[7=Z>6AAXM23EKH+[OE+>P4(6\E<0@+QF$LR=?' >@Y2ZRGR( M8$1R3E;3%,YK!9LGG@''QD\=\NWRYIX.X/3O2WEJLT&MV00EY?Q>O' MH^U]$ 88O44??KXH,2# @90,K-^P.=>^$*WULHU&M\6-\F;%VT=YO<^B1KE" M]&E&N=5+.CAUG_%&J./3.'_)=T_;=S95;9%[!73[/KVS'GV"Q^E'LB]4$/=CJ"Q:([8(W6D-CB1 &U\ M42)(U2] K/58VC@^5[=U'%?-ES2.&Z0V/HYQQ8$6-9[1=_,\$6?:M]_C[NR% MW8?UU*[Y<7L7S+ZL*?G@T9W3)PW#W/)U\+DT=V4&\QY-?G#^&D95NI?F<^_& M1DA]M%VIXHSRO 5"#^P0=/2PLW$4?N\\@Z__<,IDLR6"-JD&J+63].E4[51N5&JKXS,-2K10GZ"K&B+UJF[EI-16 M#:VP'X>W"SWIZ3?D[DS"(TEH0-PR5QVDB>)?\+XL>9L]]=44QN!4"2.S M>,X]G8JUG]%DT>^\1G A6]@A7#[W$'IP)JB1.*NK6CSRN?M M%S&46\0V,)0+ZA@..6;7V?X)1_$0Z=%)Z-,GY]AZL*%LC-QEVY64G;6Y)6(W M[1!XZ& MW^0!70*$+9]53*UG!'K&G+ ]5WSOL.AGQT]Y['!,D_B.OE+_^U9_ M;.^!W"DUU)4]LZ4Y8O?4D7KHV 7:1! G&762D;?LJ5.J_,1V =LRU^&!;_8J M?O,2T^@5LFD71GB7<;3X*#Z_._=(#]D^Y .-Q/8D=XG-B\]V8B?CYO.1N@GU MGMF!-]ELG_BG\98'!0PR=#E1\0?$^:SY.TY:>^LQ^+!CSV)R$+2J@N;U M@ZZ([IQ(%*B3Q1'5AF2!BE+G,^]8SV:IG%'=".M3(UC!R?F M"C[Q,(NY=+V+J,BBK7$*K]L1,^+U4KZ$.ZU>V+&NGQ(F@"Y..'C%A$,<^?"T MK@YZ9X:N>13/N)"<#2GYX#C"G\D&3VNS)7T'8U6/OICAJJ\)Y%K 7P1H]=;# M,&Y!R5F;V#6;_I#1##>$S6F*BX%(9NR)F3A/^H4E^T*Y2R=F\6;[$#&7+Q': M7TWJ=4:*>\.,*>5'5M^XGQ*'U\1P0KV8G)FUN\D=-NC MZ_VE;O?%^T3KRTRMOHOV"W,O&#//^$7VC-PQ-I)CV'[#.;,Y.H'"^OV']^PS M]4"<\LI'^XFKNCER*.A2M';6JFB+V-4[11Y\R@J$Q8"5[^W8/6&=5MNGU0 I> M/=25EQXMS1&O/G2D'IRD7MQSK(B3C+KE-('YPU@HM4O&QLB M=T>U% (Y<2+28I_E#&"4[9T?;US#GK9#B=(=:Y=AH,KWLN=.EX\/T\;2G-+D#-G!=7'U[IZ4Y<@?K4E3V-%5; MQ"[7*?+0,9H3)H(R*4A;OW/3I&_K+9O6#@L/2=>2L:ZAZG4<0CR3OFO,!3)=81RVET0^Z_NHJ?[4RW]$'LR]JBC]NCKC@0 MB06&C>KI=??#8'>1P+Z:7W&PF=;'#0_T*7$2<>-=(Y!L[X'=UM4;,HT5VN(VE?;Y!V=?RTGBR3+W$1*THRL/0?\V8D8 MG".7>L(9%0]4+]^N?">.16HMP(K-5GSSUA(O#B2%W'W'&$CV[B%T$#O_*'6& MNDW!E%0@D;.U'I2>:MUHG[?V1X;]2"#WFR$&J3TV[-$?L9\,4F/P87"-&3PS M5'C,F^UWAW-:166#%3FQE_%P6*L^V#-+?+K9W@8>>V5>ZOB*DG2J=DAQH%.U MHB988R.$'MTMZ^#+=T 5'L%6=*U4JCO3#IX%/U)?>$>\9\?GL&4:&T9A2:-7 MSQS*<=W>?2DC7E.+<;ZPJ?F">$(O\X2+7U;G,1N6J1D@Z33 M%!Q\YFZ*50N MV&SY]*FHCM7:$+'CMRM7^'=S*Z1NW"'LT#%9DB4Y74N[-7.H:/'L[F<>M+:G M;*JW0.I;+>K4=DJJKQ%Z4YN4@U;H+VLZY^%)#[ MX !SR![:HSMB_QVBQ5!/$+R(8$9D;D2P(SD_PAE:/EV;TRCP0)&\B\J*$@%4 M #V$0;*/+5:&Z;; \Z=P)%3(%!8/%6?FZ <59?=%0\6Y%A-#!6>('BK,&85# MQ7>H(8&S&QL_U&DL'Q;.3=(3&"H"RX:&!CVF!@=@B1\>#!H&'O :S)30+?Q[ M;C%U

_9$Z^V!3E"D0^G3&GO5@D"Z#TWQR4LF>',-(N'>X)3&POW@1KN_* MKN\(U_?8=DOA]01SH/C:"V1!.#J\MYOZ3D1>\Z7XED*J [HB+'#]%"I3K1\21B3.RPCPKUGHS9P"8=8?0!-I@:/-/ >S MVH3CY _VHK U']L>\\76_Q-UTTC<,[OY#..8>N\Y8H$)TJ2XY>9$L*J,'VB4 M&>FMF4#+'OZT')&"_HSFEN/!"=DACA[GT'JHM\ND247;^IE(L\KWSH&V'I-H M=%ND1YXKWNU659_%^4:#Z*8'.+"P? YC2_=5N_+37F'YX'QFA_2@O+ER^CU2 M=U6J4MQ3J7V)T '5,@[.V9-1LW@791)];.8_C6/(O\R# 1JXXI7'O5C8;;;5 MQVU/@WH10.IHPXU1SZ.JVQNAJXY08GC>U3@F$E&2,;(>%M9-D*O?&A&V]UC4 MH&]45SW*:\T7,ZR;I38^CJT&?G-JO.I2><83-BY&\G89!E[[(=IY,^1NJE*L M=A1VT@:Q0RI%';S-*@@2H&C[O,JT:D"*>YK%=']IS (:QVOWMY3%K"M+I;(U MKR[NU)?D^CN M@M1M^RA<7H;H:(_]_H.N^ 9J.[! 7#X0'GND49)?$$Y"(H0@LA1$B$&X'"OB M!,0I1GBX%24BLA(/,]]4F-I4:BOP_W=E\S["Y)I?_33OH<0=1\Z=&(E77 !% M)HC&1DBAJUVIXHSBO 7"6*)#T,'[)"5) C2M9'ZHJ_7,62A3/+0T7P M>2!6[18Q'!O$-34H@;3%7 NSZ3E!H'H?1LG^F7YVXN?0]S\Y;^LTV8<1#Q-^ M'A##CJ*&U$$-F:F,?(>3PAX4&]!LTGA9R$>$@"27D)0BDM>OE0'U2HJHQ:=; MYE./.#M..T[LA=86#=YNRY];UB:VHW*T1NL:@#9/I%YB^EO*Q_C-*_\?F.%: M-L_5K9$BO*::]6.JQJ8( S%=B8UL@U%%\KQJ[5W7 LVEKSU8Y+#\UME^6C;='PQ_.CH[/SX:?/Y<4+IP8M0S# 89R<.?AJO? M7!94P^"O@]&7XR^'!X<'@_._CH9_/3P=/'Q;M?N&!CF#K(8^#/[X*_[/,_K@ M #$;Q-D_?_ZT2)*7OW[Y\N/'CY_>GB/_IS":(Q('1U_*UI^*YOBWD-(>!G'B M!.ZZ?8W^CZ.L]?#\_/Q+]MM5TQ@V-41DAU_^Y]O=D[L 2^?SQ@=B^-'GX^&/[W%WB*@9Q=R#$Z%?+T "7<>7R^D6:=ULKWX8 M3V:WR#@N06=VFTB:Q.9EN'R)P ($,7P%=V$<*^";^ V3!/&4A.X?B]#WT!)Y M_6>*S(U4&321-YM]N=->Z%LF">;2B13,91A#3099HUT='"T!6(X"LRTJ_@%NV;H[0#3P12>I;F M$'G'08)(H0YS-&, 6H[:,D8DIH6US/'+ D)X2X#V QW6:A(M+8SE&YJI\];6 M;E0(Z)E-\!5Z(/!B'&YQH@#!)7X T=,"N>8M)Q65HCX MM[DT>EH8>@.N3IM M,5?VU;,:AX).J.6@J]&= M[L):E8(A?F?;A/!-_-V;Y*)O'-.ZCCO$*=9W,XY!#Y+A)OHF0P3"!H@E,;NP6 M9'+:1%8GN^@'SGP>@1QKDUGQXXOWRS1.PB6(IHAZ$6["X\?_E"&/3M\U;9M> M_JJ38$3HFR: [7^K$@3Q.\9&,CI)0N@#AL0R.C%,(6<(>_<.^@>.1DCFLT[7 MG/!-)U;I%$UBLOSARBG!]D>I$#B_:%*4J]MNE$'3H#C7(QI8!-TLJ1']_GL M._+>XC.Z#_H[\=M$Q[@07[=)S4/8.);'00*OH)]BNY/]H*-E:_3Z#5L;[#Q.7@#V,8)Y]G-93JJ$SVH4UTV* Z3?8 "7 MZ3+[$7*VL^7W>X 4BU:L2QR.\;'_765$AM1D?-VTY)8[M*?OMA/F)F[(X4/' M> B1G"'L%:$9I(IIF#A^OO.^>/\*PGGDO"R@.XZ (UD&8M\T(5>HHW=((B;, MVLO&8<@=^F7!#_Z>O)NI&V(#;PE:_H&W^BE,\)<.#@[.#P:?!R6AS;\Z@3?( MJ0[:77C-.$6\^J%;&8N/;Q*'456'F%R,Z&6T8N#^- ]?OW@ (IK#<_R7S_@O MGP^&Q6WA_XM^]/ME^ JB\7.<;L@, __G3PV__Z)^1*7T<""T84";O_[] MY.CT\/CP<'1V=G1P<#PZ.#W;&.(F0,91=;A.Y):TT5]KF*FJHVCQY26[VO;9 M74!_A8)9%"X;)55\+>0<=1BA9?#G3\-/@S1&8PE?\*CQ!3H$7X3>Y/WG3T<[ M%?]_ITZ$MJW^>VZS*)K8:MD_I? P4.CGT!C]3",GB&&^M68H:+MIE<'1Z.#\ MU' -<7%0J.C(&!6A[2$,T;+B73D)S915VO5/.>SA%YHYIFCF>">:R1?C&^B# M^W3Y#*(&I6PWZ8\^N$9>J&*D?9+DHWT$&C*UIL[;K8=D M &JHJ' MBU)?^F,-E:$_A''B^/\/OE!]C*;&/=45FX=24[2HPVXV3M@$X$@T03>;O^Z/ M-IBC+N6O/Z2 2T?Z#XLP(&]!0, MYMCRIC'1;C4W[X^.A+DH]65*I"%+PD*,XEOF@A MB%WJ"\>QHDODSS! METJAA0U&.U3*]1)$ZT!\* MF$8.?K_@Z7WY'/H-BJC\OC]:8 ^[5('^S((2,==O[@)?UR&]G ?:?)9ZC\OC_J8 ^[5 $M"+!:;O[V9?MF@8S[!EQ/ M16T(D7C;8'B ;QNLR*&_7T[NGR9WMU?CZ?75X&)\-[Z_O!X\_7)]/7WZI/"J M08F^F1,_9_32^//<<5YR" (_B!9*, 6Y9X#F 'DGGAWN:B(;&0\ M)""*0=92IY8+?XI+V5MMC=,YA^Y("N=AS1*]X\>>\%5-] >^"?WJ^ !?WDPN MG2AZ1QO1K((= 0=0VW3(!,,'#TM H:;?FE7 #K;C1.]*#F(0(O M#O0VBDPDBT(:,1TU'#VM0DU;?BF7T_ID7G@@01'&^>C@_+B_RF=S1KGX)J1F M7*5!HYH?HO %1,G[@^_D10N07_6"MVK(-A(- ;F+H2 0GOJ"'%KB4E0KY3S" M^0+MV+_'>R @SB+DCR'5Q ]A^9L.*Z*L:\JU.72)%L*<@<[@"'( MGP+/0#LFM@L+(]ZOWUP_Q:?H93UB CIXNMJ!D]:A4J_ MER]A[5_O;G"U6:K?W]C6#NWQLT:YGM^GN;EZ;9N\P;-#LQ1>*/?V^[27VZ@0 MBC8M]2JKC',EWN[&P:'M\6(GABW9\FW(@._TD=S!.%QTTB\5+CR<6W)"N?64 M!B,@V-C89&#P:+)A+>'GTQ(8-)VAE&)\%S]NVNY:$=VAQDO^TB#2FFL%"\MZ MW#B1BK"HXDM402R\QA.R9$69=TCDY:1S2E4]3%B-;6/./G =>Z1-I-D@@^I]GK;=.P^85?YJU5 MF1^Q'9@[D):L1 +MASVKTCC4"XA;S8P#T XTWFS_F%*1="I8-7I:3G8\#^9C M?W @VC]<.B\0+=8;0B =\3 [?L"I@YPL"0@]XN<\ [!Z(7OLNNDR]7&Q"[1G MA2XD7WAE=?R 5PF%"DWQRV\PR 90BI6 N>UF5?F<(OD<[B&HN*1B22!*CH"5[BP_ M0*E8EI;$UU@;_98)Z\;!3UWTE9]_RNMWW2"CJ\[=0R;V!4B@ZZQNF#&+WHWX MB]X-_E+YQ+]_^BB"U\^U3F,TU0#CT_:6S [$8DV._"HF@RS&),HD[F5!P <0 M947&V9%44D\#\:0<%]3@JI"@E-9_TW3$5"M@/TZ3!1K2O]8+'AEFVST^X-5& M0$KO:I@"J]LX3ODAE;?^@).H<)3FXID")?(;(SQ=JG([TY]090:H6!)2&B75 M4>9\]<-X,LLCQ9S;OD-ZK?.G*?KCV_4]VO)-;@:W]Y>3;]=F;_9R[E<,,38X MQ-9Z3O9>09""&S2AFJY*KNKCX+(-Z'\>^?BE!27C+ E#D=43.SGL6K/IBM&. M%A?=R8)@('J%+HB?0I_LL9 Z]!D5@EQ9DA[P-0KC^"$*9\0\@(T6?58OBPU9 MWJ/F@X GD'E&7T$ (L='0!Y[2QA +!?\YG11BY<4O^/JW&<4=.#0DNO"JWM. MZPP!UI6P=)PA0, XE[51?AU!7&5BR:<@RSH@R MI=WT(W:R%C(MV+9D=W$;O((XN\F4LTR^/MS0TEH\\/)J28IP&:6EVX:M5A8K MG\UGUZW&>:[X ,QQL%>KZDM7NPRVP2!% BQ\\3 H%LO5K7D07[\A:2(!P,") MWF^12Q<+I5TJ_&)55>>CX<%!;QS?78M%5FEGS9NHE3B*V7H! D".E!%:]Q\W M?"QUO;IIC-7*HX24R,BZ09]UR^!"69KKCN,@(%D;OP[Y_,)T^@P-.9VW9)H1-B_7-\_W?YZ/?C+ MW>3IZ=][<:=@XYYP+IVLBF>M. __77(^*GT*E9M@-5JJB2.$OC7YU=R9/=(6 M,]N64%EAB@%HCIXV8J0MVTIOQNJL#4^H4T9.K$,RS_[EYYKW_IGFV3.,HG)J M/F8<1-OBBY"GMAN![9EEE%A73/)7+(;S+B0ERTAO'(1I-])FG)B;@$4)J[\< M(73-!&T\2#?98(H;/QO!(\JNK"MJ=&ND*?) +FK("#H1ZB.P8 ZVOGH)UQ="FV%JRQI\U,MD$L%53K1C' MY(OH06M55LX:MEMA@*?M^ V2(D/4/E66AZ/A@>8'[SDT0E$C-XM&:74C!^@; MP+%O=BY4WLY<[7$K@IH11>'2DG,EPIL95!A0^U@)"7&.+4F,V'[S@HJ+YL96 M D* 54LN]W$\0D$W&KS]K<1+-^XMJ4C2' >AHH;6Q4J@"#-LR1,=6R*["I?( MOI+R,)O:6HD&?DXM*5VR$MH=6EVSNZBL3>6JH;D :+63I/-EB7N)5KX(.#&^ M:)+]>1O4PR>/R!3>A-$/)R+E90M2,1<.A2"1&J2OD0;<9.;(2H),%8$F(B2"-W,F0 CD;).,1)P@8WZ(2%(\G9)QD] M3>_\K"U^/ T)QXK-0GI$NZ((NEFR%)+P]P F\2- EB&&"2A>,UQ8)STA\"/2(T.CC/HXY_\7M:6P;)]=7PDHXS)S-QL M@939WG(XM>-?5B%&DRY:9%)\!"]IY"[PE*DM5+3UF=;/<@1UDX.2\H[:%UZ: M+'+?I 68\H[&H:F=WL7P0V&]J^=F3#7 ;S#(0%L&I@%'LE# M%&)X>Q?OWV/@W0:K1T/';H* GT 0-SV>PWI34PIQD\T)4?%;M3!4B<&2=-76 MN5X&H$&A=OE3P.R"0^7D$!_Q!2[T0:6DS#3D%#K#1*GXU'Y#=&<2M>32QQ5 MXW5A)FOT=Q\4>7'C)0YK_(N6>,/3U3@P[@P?#1'-MO)26K9/9W"(.\6+(U%I MO[$E("&E%4Y'>M!4/@(^"9X<'TQF2,!(I,G[@^_D5SY?L%8(Z.+K_($V*1)3 M7%-/TT'-]R "C@__!;RU:*Y !%^1G%^)R0R,7A^(ZR8J)>\Y:U\XRV?M721G M^MO>#2VK#0^&>PLI7O$H2+C7OE[6C[96\BQ28QD;5WX"'Y"3)C7MZ<2J MP(>T ) I?_:)2R6UCW$0ZZAG'N"PV+(.;M0FET933)I\%NF>M=]A!6G%)3L!PV"$'8P MVZ-HN_?> HE+$(HW?*>F &OLNF&*W-<'YYU2I9O9;Q_!Q","2VY8\ZWT=]!Y MAOY&6?]6SM.*RCYB2EP@"C9R:S,U%(4;X9(H17)W^-^Y(1X'7LDKK.W>6M.Q M%T9R1=+UGBECQ3,F.H7,=I0""M)$NMH+KLY2Z'K;U,PR#TR?L@VNR"3V$5^" MTNAZP<\0%XL_LZESBFI5C*/1P?GIWH;1.TI-5G&&QO>ZA+TOI4B\#5Y!K"J1 M6I"X<0B6E$@M0PR6)!.B7759<,?],X41J"2&C/,"*K14''X"QJ%)(3KJ4.PH M)VL.AQ#;+@!>C*L.-*0B\2".G\*>0ZZCH"PQ.LI)5CGB'CAY M-S!PD/.MQLD3)&X<9B4Y>3+$8,G;8YL+P1T, +Z0B\8.>5;82GOCL*)0]_3U ME"T6&Z^ /(*7PHV=S'B 1&R_WT 2$XOB_!U-4-J<3+BT"A(SF$\XR'G@31NL*L5P(8W;<F7)95T"!ZCN62@\J>8T^"L"2E"QD5E>!7 M0N= ZGX#L*.<9*40F13@OY[-@)M,9M=OR,\(YN 1V>A)@*6$_W_]^DB\?J(& M_V(<>-4?;+0D@%3!EZI:.D5:.NQ7Z']7,I'T@*#NX$@GP>3/5M3S"(N:VILJ MR-5"P/%N!]%[B!L@+EG;[PV[W3OTJP#S?F.3!K6NUVS,>)"Z#X#3G.>N&W$2 M+N10:_?ON$)?^O+B9^)T_%*%3P?99S_6:_'43 M_+3F/:4*1Z65>8KOH,@Z+'BX59K3H6D'FU_^F#IO(&;!8;NA]8C@8EAI=4Y- MH'B$\P6RI]^+BZV3Y\2! 8[UE%L&''>L7(!EW4KO0+$J]3,D]6.;8"9;,I(R M.4@W0G4%>?.R?^MDXL!;Q1UOT?K/3);E[6\>VD3S83MQ:LD]S_7K.WG9D+*L M4>"MK[P2D,+3U3B0=%-Z'42MA:#L10DU+Q==H1_X89Q&X-Y)T'\GLXLTQBF9 M?"\5#0_0_PT^#]9DT#]R2H-P-MB@9?"[1)-H[@1%-?OU TYYI?N'#>E.9@6D M''_]MA/#[$JBK67%*0"Q/BXC+2VUAL:9!ZDJKBPV?+SWUBI<.#&,\<6Y-3E. MPW!8-PP9,6P7ML@9;!N*ZEO9HZD^=#G>QZ%TT#&+&Q2(,/\$YP&<01=?@ZP- M>(IT>N&3\Z.ZD*S.CG/]E4;8"MZ<[M)95QI1.=F5E<"E?2N\1V& _NKF]I/3 M8!S5#49.=[ F/*A1-MAVW(,?))$@T%QF>]MX5> O:P/1TH.VUNR;CQ(HZTE5 M:CUPEE620=HXZR010M5$)D6RZJV?<^/ Z%?'3\$WX.!_BQBNX[KAPN0&&;W! M%D&#[=5*!FM66(:(WD6'A6D:$VI/C H/H%@ZU),?BX%([CLS8&U!Y:GDCG4#._R6A) MK3IWAJ/A4+/MX%!LY:ERB6SW=I.1EZH91Q&.DHC$"<[JYB&G-=@B9K EP&4P MN!T(4F,]K\9OCH4UOPFMC9N_='54GW+GYZBW4W/]ONYM@$21BLS.\_KL7),; M5.D9/4$;1( ,]2_ FU>NJ K,X@X4]4QUX0&S[4%[D@8:CB:Z MLY $SA/#\9C0]W$.6I%=SVF-A@<-:545@H--B@;;HV8Q<"2KTCKIL"K?8)!! MJ!P-O_'@Z&F!3VZ89:,ME;YV-K.+-!9I6WF6XQ(^Q"V1'#1O2)C-ZGS." M@RV*!L_O-0M9C:G5J!^!C\OU7(;(0CTM$-[P +VR; O+Y>A(5$_&->>8+S;' MS'0\NE&MSKC#$=J$:O8]I,"EFJDM7T*]M4D;5[8X#5%#FF9.9%!2,=CXK-CE MWLQ0>VB]?LCO3]"Z&#?A.534>.>0E[?>3M75#1/\#HD3!E)25S&?"BZPT)@DS5:"?E$=C:9]BS\DV)(R9H\(J6CT' M*X/CWL[[^QLQW,156:H9TXK6W,SV[;<[K23>D$Z[Z&SR?\S$RYN]V(QWS M]0[$,0#52@#,_3.]DW$SLUD9FS.Q!4-VQ--QF6F8K.XH9-5(;(L@)B1*J3Z A-HI%>J]!*U96R<=WY M[^T:_@A>PBC!Z4I/8"Z0$#!LR.9;TQIL$#/82!2CS,>-#V,9;CJQN18'?6LT M JXYNZ=QDYREJHH[WI*_WD[BI_0Y!G^FB-3U*UA7KF',X(:$NS6A04G)Y.E; M99OEI9.;ZZG&61T-<]*2VILW51EJJ5;;%.&JMQ.T\?[L-,LMYIJL^"K!$>(Z[9.[ %Z*WTY?C2V_&8+\R(VD[T(]WB1X!+@Z%EJ3LE(9 MF:*8$U_F-XPS%J+7==5+H[=&IKCJ*&161G6S4I#IB1DQ\K8OX2RM\1,8O%0[ M(-*U"NAC!&C-#R>WN+G;F5^SRC +8&%5N+4='@C=K<:$",\V5F)&EMN9SR/\ M^%]6GV]S#>!(GF/WM0$]W1E6\/QU0\EDC64 A)R&D[K30"\&T!-?8D^J JQ= MZ'*P_%N06@_C[$/G^_ZBS"K;+VC;RL( )N .OH)F,R&P8>6E9#.*N@E!@=.B M$UTA31PW*:X6/%[BJ'U>C/CZ#2>L\[DS,C]A+QZ524>!BV1.A1,A]^BT[A[Q MUCGIB:-D0<&3M7TF:)M_E6,1,,Z8")8UZ%0;5_#YYS>IHW'SFK_<24OF>CN5&XLP",WF\_IL;JY_TIL)O?>% M4#8G03GTXBPQ61TN"OH"W)2J\VN$YI==94]DB43I88ZFQ^J:9+,A]*\.#.[" M.+X--MYV6SV\\P"B["G!P&T%RT[?V4?0RA>8TG.HG1TF$ KXB"RJPX/ZHDHJ MX].39=6 >CZ$ ^W8];38S+[U8D@%G#Y]>L@R7YS&[A^ZN%0T?IA,/PO M? ]]-0O8Y]6[^[IQ-HJ_5I )DE)8JE@:@"^=*'I' M5/:194V+D5T!UT>C\3AS#*F]JD _T6<(6M7ZZ<*D=5E#VP+#URU<),@KZ*<) M)UI:4K,#13*9[ZTC6Q3L$%D5&JZPY%1ZXJ;VJ,(,&@-VA;CF,J&U,7.5+OYJ M31E^3G933*:C<])4)$?@[HE ]QYI6PIKN[EBLON:($(&N2'_K:$R2$^L<[]+ MA*Q>[N!OW>2+#)RD<8P0!;R M"B0.]/G,P?%!0RW_G. @G U*DH._%$0--P>3:.X$16[T.MZ,L1MX#QOBWC@7 M7D>@&;9#"FV$O-'H[/#HZ.P4L7!X?? +AF@^)*PL<91LS 'TKVW\HQ_]/OD1(-.S@"_C-QAOJ;OV>V-TVUK> M:Y7Q,4W+V%P?P![>=P46?&/IS< 2'EY.1L=#PZ.CHZ.3PX/SD6WES+ M*OL=8!!'>9(*C/]HVH+3&QLSW5N*O3[E!?A4N9?NKLR+]PL0N(NE$_W1L-7F M[6:<@@7TPZ%<'FX-5W,Y_L8M.F\W\]7,HRD>A7/PK7W#)^GU'%LL8^=0E@]#(?'@SE-L"C!<=F0H3K,.>; M\\\P*GF."<=O]48]4#SGZ1LG;\0:9+M2U+VS!)-99;3$\S=B6V/4)B#YJKK$ M6-,^,0FG--/P90J"%>_D<[C&AD9I44PA6\AE "#8R/K@O<%,F*^V+%B],O\$ +M-E U\KYKV+]Q7_K8V:A._8#DI5 M(E)6$5NS [46U)#7A=KH4A75.1+504_1U)K;WKE2[?PHPNSHL\J[,%QH?=1S M<\!X?^GZ#9=CPK>JXAA?IO2FSAO!2K2@9 ^29 NA0-=)OXM*-KZ3*Y:^=EQ/ M7R,^E-N/!#8K7LH5?:T5-;@/@ZC^>"N+XZ[TC3,QHB_DJI6$42E5*U8OWCW.JOOT 0(;$OWN_ *_#Y=C64SL8!1>/&1E1,*C,, MY3BI=8Z$=SE$&N8B1UR3G)ZKD"ALLT&WP4N:Q)DJQP)JY^5$*1#H@[#=E*RQ ^[=.(%$B+^X_K/%+[B M[-I&89#R]7C[&P>U=FIOR.'K) 'M,"(G].%Z.H@57#P1>B#/4\J$MN*-D-/' M[F@=&#JROIOB_[NU+&7YM/( H>\,#@W#]A;YP3X6 :7'6Z" ITQ M>E_C;(N@,AONJ;5@6'MP3-HUZ)K &H7PA/X;XXOBM\%#!%YAF.*'?&'H$:#4 MG;!-.%,D#>U;1$J$=IO=U1[E6^C!&70S=O-P#.G9^!9D; "-5-XM.4%OE!WV MY2[39>KGZ;A.XBZ^OXR]?Z+?9^]6AH7PN1"G\$LV@'+7XE%V/*[5 \>F4M0+ M/Q3WPC\/\(<^G/%^../7;R_ 38 WA4O49#++?0 T9O0[VN5P.<2KL^]P-!QJ MOF^CVIUO)Y&=O8.Y>XP])4Z47#D)K?Z^W(^8BCD5P%& 4K8L.=!ZU%.TWC'R M(.5]X .E"N6H-*U$4ZB_L\CRK3XI=T06>?MP38>: FS3)*GT($$X88H0H6DA M@77]OZ9832>"^XM(1;)3:ET/=[R5+G_ ,?1]XC\ %\!5[*_%E&E%> B9W,-6FM-G7"G)IV=G4FNM'/#^#^@K$T<,F M.(BRJ?V82%8U$20Q1/O])HSNPF ^!=%*=/$D>HC">>00]X66;3\W MNL'#> M3Y,@BW?MNY0V$!F[;I2BD85QC-RG5QCC5..6.*'0V@^PB K DGT,52;B3NEV M5QNPTYE?6=L7/6XI PT=*-D #MGL2]K"O(+H.337L*P.&=QP'L!_ 9'$;3(1 M&_ DD?.^;W+0#YSY/ +S(D6S^/'%>RD/7.L65Q39+'TKN L:D7=!U<\/PMD@ M*G[W_#YPBR$,\!<&3N -W'+3E/WD8[>D^_2&@!Y:#B.MBTVV19A/<_,-GY#, ML](:Y:W+)S#/*FU0T@>I?8S3L["RZOH69]A@A>=#IQ9KKM;* LWQ\:0])D10 MW'ZS\Y$E8<)T_:#YA)BDNR_=XT3;P><4 M#Y*B3LZ^%BBY"Z?:2]^2(O_P%?K,.5MOU7]U&^/2W;VS!)-99>B-FQ%J6V,T*:"& MJN[$6#/5H_WFQ(CF$XA>H0O&",G9QFPE"[+=Y>IHE);%%+9EDMNS:ZKF[Y%3 MT%;YO'WMT7\GCK7OBM0=:&5%"B>SAPBZN((A.>;(U]D8P$@,/G;@G+(KTQR% M9#-%#5#R=C<.#QV4V089)GL4DA[C@6_ P]RN4CKI3S81FO<0*%R+3RN^M4.# M%,P)8%+A@>)BD-K:JFAQIK5[%<2,S3AY!'#YG$8Q7B8YE,WH4F5_A-@?V:/S M-KQKC]8JS5"X8]04874S#BX2G,A6/"N([&IW/!E9']=OKI]ZV V+8X#^YTV= MMW;).TV4^H(L.BSJZ)(E"CNJ=G\-0^\']/UQX-TB2?V6S0DT0ZBM"X7[(1I*$E^\9= "_UP616#I:63T=H;9P9 M::6\2CJ. *,B;KN8>:<">H35D"#$ID)T" M)0L4F?_O,9BE_AVR;OL)&0KO M-CY<21'$V'7SA]V!-UZ&40+_E2E;'$T$0GN*+Q%I='6JSW/$!3AGOVB[B;D3 M/9C;9'LRVY8/ 5_T3C9CJ07G]CO5-VF"CU\V1(-?R0QBUJ%;%Y(V@TRZ7"Q) M>Z$9\KI$\G=<$>-X6Q2[CO\/X)!OEW>FW"= MD.1V,K:16Q*LSL,=.[JLL*B MF?X(I<"UH/4!T"Z"LCZR010(^KQXL(-*K2K@L]'PX/@#B0*BTIYYK@N+-V$J M9P4OB7T@L9.D[-_:D"2"VLH#(FK[ <1.DMK+#>"[8B$MI.7[,B+!2>RA[ MIG=+N5QG'"K:J;D.EW:<6V)$)B\@0DH+YG?X M26+.-[WIG:KB.D=>W9$=0&G!MB2C4GVH6?OY3"'0VP YCT[@ CI:"*VMA8D( MOY:$IZ?.&RB],#H8&EI:"P1>7BT)#6<9]$39T2X>$#M9"XT6;%L2MQ4%R/YA MHQ4L.H=--V)%"O_=8;&J]XBO::5,_%GW:U$P^,EDL0N=#QK_],X0NV7C

D6IN71'0R8'^!^;:NW@B'%HRX:LL7SI1]([?+5KB MLW0N'%2[& X&NDI9@.!@5>D-G#,]$/D>.'G:%O R><1QBH\RBOPM DCHG2R# M20MFNYH/QJUH3=$>O/!.BX67LL-F28R4,[YZ0R-5Q:. NNHXF3-8<]33 MO::FQFF/4P\0);X+^NF8 FJ!#;DVPE6CR3D$. ![!:^B_PF!>-654 MWX[:QW@X<%GY]JQ:@HL\\%S&G>FN?D/3JF@.1\.AYCO@G5# S:'2 OIREO@X M2C90@/ZUC0#TH]\?<5B\82VO_,XX'8LOWFQ^B$[;3E71./^V?FN,.MA";5 M>U(99E&YE/<-!G"9+HGJJ_S>/ 52QE55(9L/,Y5H0E)L+PUG&PXMN;V.6?X- MP/D"OV_R"B)G#FX#-"@0)X].0CO'I/0R'!)TQ3;#0I1;I=FQ(TU>-));Z3:N M]@[.&[:5%V$4A3_PSL)Y0;])WDG>M0 )RU#4F7538ZL/88+$ 1W_-G C7"+H M(2]1%WEH?#? P=4PF^*K//TLP4 W?I6&6H5S:0DHV+2(3S^1]74;_+: [J+L>OWF+K"CYC6A129]FU"E7"X*'!W]@?Y=I&OV%E>= MV%6:W7NHW_'A<&RJ$K")P@>43F+X(N M'G \"6Z#5_3O+('V,K.(B&U<5#?T'Z+P%<:XU3C>-*Q3?#^E>#TYO !7,'X) M8^!-9K.F-6S78[ $B.;(3E9E=:/6PH9]2?X.&S+T7?9U9"*6X%(B\P6PSI0 M:U6B0/4EARN099W!5[ 6IF!YL_-Z>;,UU<$&V?[<:FB0R3CP?@'>''M2R':] MYF\9\%]]Z$!13XQ1>, Q_19%2WH&VIW.X*@&*F4*AA+"U.R/-_'Y".,_*/E: MM"XVP(*B1SZ<4(71!RB4+V4P$[]H77H!!:JJ:-KFY->2T\WMR!@U[:>YL<%P MX-1E'0X"G%H"A#;FE'T8WH%F5=C'2-@GIL!J=PM.-VDIS4V3=29RG^*I-9EM M,/T]!MY-&$TC!\=1FX)$S$Y6H(>NW:W83SN1*#V"U^[NK-YAN0]SOAB%S!C] M]@I4W:2BU/0(IW98=QQK.?9V(SU)*0/2'F BH'3L_3.-$^!59]VF$!XB&+CP MQ?$?G/=,#9, EQG"EU";8-F)X/[A4+ZXE&8+'&H.9&_OO?!]ZO:![EH='T*@ MN_*+\I'/[*%:^!$._PB'R]J\]=/>[2 KB"%:$PXV" Z/CDMU/"P"2._P9K"_R4D%J M;C 8U"P30H*@!(DT+Q%-;% 7"'('XR @I"(^#=N_,&2/LJYK-F\\P$E=(EC= MJB(;Z4^&%]1N'1ZM.+8$)+>!&R[!$U)8%J?D6#,^3U$/TODR/T!L0/CX4']9E25[F!%N"^' MP4L8!AFFRM'0CFL;VQIG"_A44WE,F)LOHUX5^=6)(![IRDL/ MDLS&7;Q?^DX7WQF&@S=+!Q]7.3E/%M-1H M\QM:&*,I/FD3M/-AAGGLS] S>[ S X-4+J:O1LK$DUL;\PLE^'*BW&IH$*E M"5!83:CUC8B+]P>'\M:W 7CX4)7.1LRHKQ+LB?2[BQ)>Y(&!"FX0:(NL#]$H0N %V-[7%K&#=3@19+6 Q[E-2TWA=< MG !>]OOO 11-Y!S6$SDS4I^S;PTV/X9^M?Y>WFJ0?;$O&9YK+O%3')M2]-'" MA 0;)W&VT<4#],H:4ZR*/QV)ZC ^3^X">*F/1IR-K :K<13A:F[92"_>UVV* MT8]_.)%'RRJ51M\X,R8'0IN&3:VL=E80T$.MPKN ML1AD1=9..\EGOV/<'^].N"KV\Y'V5ZEWO=51)$(%%VIZA=PRIKZJ_9@5O)\N MG&"2B2+^BD@D\6WP -"6#ESU(+N P*OKY_L\ $ 2LM2RM\]5+V%&":B6F()52^RIX1 MV?9V-(S@8RKH$K*"G9_VF\CJQ(I,T"MY_=CY]_=OVI@A8AOK/8S]C#CPFD5; MO(!"REKAZKR_<.T@'TMVMM?+%S]\!^ )1*\0O^36)(?5W,N$C!:QQ/$W?X\O MC-R'R3] \@C<X MW7#7DZEQ$!\S2*.<)14SD>3Z$+;/8]>-4N!=X4LD(,A\OE?'1U+/$K":MKOT M'A5)G!Z,AH>V(ZZM4!34*]G-C?&\9.#4>0."5\(/ZU?"VA92F1""S)>&H6#R[# 8,4!O/)"Y(+=3_"3H SH._I\BA\:";_19) "[391..Y%'O-:04BT%[\I1";#EO*K&5 M4]][;%'$H"P(K'I;5>X=\5NTUTX4(,L=(Q%EFU.Q?=91?9^U(CYP F]0DA\@ M^H/L ^KW7H0I1^.:L*L2Z*>G -]R&0;9);;5(-=Z='WT!RFIC*=K%?1#?7-? M6'W5JGLM.562F*7_%0O&8\!-;>T C]KVG\I\ O^40@ M>R?S._IG5#\AV[CK0MCK[N;CMB/5 &E:XGCQ"Y$3Z/((VPYBQ9+2?B57Z2I_ M!?VT3(?R8.Q'.'L;@ZM. MVY NS&H_Y%"(%A%L&(,$&4KEA,CNM@K:RUK5CBIR*7(BI&B]9QBA<:WXS>9# M$XZSQD$",QG USPS5S"1\.C@4/B Z_, ?_6S5WQV$&??M?+<*\/5$1+3T?#D MZ/CH]&1XIL"=/7@D"=S,LMBL;L;!;-<:Y\4<0V3:T[9W_]B"N6AAZ&HK[B[.L79E]Z'2 MN07P:,^T):TCE28HDBEQLI(H'&G?2A/B)G=A M,)^":/D($AP6" /,"SEJ0FENK"(I6MF*D(AR9ZI250;#>JE8GG4 M!&4K6E?93!OU^C.S[E./'A@U 55L]3?XW+L2C/9EI1=A=P-0M#-$= K5FX(J M4LG[VN:7%$YG-3 MA:0Q4&N%B;HYD2X+I8%G3>5[S)1?4JD0K;O201NX"V7QL MVHEOBK6C9@SRE$&GP?.2*"JEP!P9!\"E)+S+MZ1WA+HPA>'<$7;H.'MTV3HA>R5/G5DELG/]=J\+VWC MAS13VB>$RQ:3TB>$-%U(4/(WT>VP][G;)54/VR;V].V(VRMN)0 M\(:/]A5]&@$'R>X]$W112H0>P*+T, 9$DN)3HJPJW5+I=/D>P4NYG8S">>0L MQVFR0./Z%_#R-%#24TVH6?LRMO0/ X2)3N M%J*I$^M*8Q0K**F^-7*') !BO&T-@VP#.LM^4KRYBS% /(2KNLAE#\;F,0?;F-DO/*V*IL-]*S M0#E)%K*@WB6I-*K.CM%H>*#YIDBSL*O+").!G15_B*-D0SWH7]NJ03_Z_1%' MDAK24RN_,TX1'&)>ZX;-BH$J:M"?+M5=>\9P047V5 MWYNG0,JXJBID\V&F$MNO6W>,,@/UAL:HMY79%.2+LJG67-/H#L0Q %5W\QH9 M*N10NF RRP]$IN%UYF$2/2@!&N;JG:["NNZ[LVUC"*])*H\@ #\<']]?$X#0 M1B^[0<-BU,:07,8XWNWS[,XVV]D$!1[6*+$SS:D551!C1@@ZK#$M>=Q/EU&DN2GF\7Z81 MECZ7Z=CN9!Q.6JJ;95>X^+;1QM#%L)J5D]D-#)S A8[_$.:7UC*O.X9H)W<' M.1>F]N3W%8<=)63NKIC ]GT8N&W,U;K?WB&%P;K2DV%-=_&8DE!EM]I\H:J5 MD]%P>+HO@.PH)(J/9J;U$@/3W@&#IN3.:=X;+Y$UV*?=I!O>Q;7P@2U>K?");<=!7 M^K)44*2U9IJC9HP #2V'/F$<5P9&2W=K;ER=-*>CX>%(K[UHI;K*,1 _GT85 MU*V-^^+]WL'.';X77_[XG5+6]NY4X\@23Q\P+!Q:'OQ3NN)!QX>5U(7"8#OV^"[WLTEE%L2:HJKN/1 M\,@T6- UN^5CR92"XG-Q32D431+*:[YEA4J!-PVS\I6XCC0IL4*(ACT(D\>^ MTNN5Y]*-4S9'+D.OG#[K&N9T2T3N9P\HNK&L-!G]5!40EB].\"X(@JT^M@. MAUVE5^[D*W]M[!X!CGD@267%BAW_PO%Q[BRO6T+H;BTDVG'>BW+?34R6GA5B M%GAP-2EXT4'HO@?H$.'!BXMN@MN E*8MTM4R#'3AND#$6>\0L6'6BJ*? @[#5L\]P ,G MTP4"]^2:U1+4[)N&G,4F4EGUL2OT9=ZE@51BB3 M(\O)2$G?IO8Q3\62U-8 "&$YF*7Z?+34G.Y*&_-4*ZR !B4R.=2>TD#8ZCW< MC@/ONA@_.0&PH9EYBF0J86O?QLN4TKOX0UF*1+Q\9^NQULH"-?+QI/345I86 MOR->KIA:K+>J]TR+G#PI/7*5IL4D"P!.(R>(ES".L=@1=Q"YA? Y MQ2.FZ):SKP4:[\*I@M-7*:J_A*_09T[@>JO^JY.3)Z4'H\(36,U>?F-/<,=( M^>3I:AXVU.V&VHI#P>JN TGEH]3U6!D!/^0.YJ&FK6[K,!'D6JD#KRGR;= I MBUW8DB4.I?L-62>]!;/T;,!:(QO5+\"I@CU(S\[.[% Y+YNF[C4VQCV.UYC= M\,HR-#=-:XX'!>,?GB_2L(YY'SLH#N. *. MZ"EMK99OTRDM_FGV[:P68_;U0?[YP?/[8#V 1[!QYGN3L]T"\W$V 7"=F'KQ.>F&5^^$YZI;&N\N2/ZXKRZJQL M/4&1U6@N!4!L:YY6Y6MJ#0=Q4>C7&AJ:I4PAA6PY?OSL:=>DU#@1KTECQ:O;DC,&03LQ^DJD MI3W$K3"&9 @I.I*+*XDU^)42Q9(4?'&[I"NYL:&>Z5J?@F(O&:G.C3PE#[' MX,\4D;I^!<*9V6?US.PUP4%.L3=[^"U)L/;PA.9(XZ.3X0F.&9T/C\[.AZ>: M;N-L#9"Z66]H:MS<%1)XPZZSLFRW1HV^1TNM;FYMNBI%'"L1%DW7)#UW MFM2^RNJ9 :%Y 95P*93"IR5[LRVF&6\=-+3M P@H:F3"@,*EG1!@;;])S8T' M0GO;3N=1^Z98#@RNX"OTD',=7SKQ@N%R-K8U'0!T+=9!P,^DTN0NX5HJ.I%#84&IU\3<" !?]&P 5 <')I;2TR M,#(P,#4P-'@Q,'$N:'1M[+UI<^+(]B?\?B*>[\#4G?_<[@C+I1VHZJX) 6(' M 4)L;Q1"2D"@!;0 XM,_*0$V&&SC!1"V;MSN-I!29I[S.VMFGOSG_RUU+38' MEJV:QK__Q>[1_\: (9N*:@S__:_0S"*)__Z_/_\K!O\7_"L6^^=_(TA,[:0: MY9ABRJX.#"2$:L RU(U+9:R5&4(-H\D[^G[.(EB M]T0B21(Q!/FS^]J49,.WF,:O36OL'GO:)+WIRF]$_21_XBB.QI*_*.P7AL9J ME:?-U^\IJWU+LKSM/'_!%Z,/PZ"HXP_QP)JK,H@5S7ZLD/D5DRB D61D3X@ M2(2DZ20B$8,D L@^/D"Q.(;+\LZ;X'_^&3F0N)# AOW+M9&A)$W__3%RG.FO MGS\'DMV_-ZWAS\T/<")8$D$QA,!^;![15&/RT'ZQ6-PO^Y86/(.C*/'3_[D/ M";9MOK35O=8+8ML6^]FIE'EY!'0)40W;D0SY\2GX3L5Y>'"W"^KG^L=M4W7I M(#:0]SJ!G^^'YORG:L#A )]N/QU+,NR!:>F2 VGMSXM"T,3.O&S+.20#_/(( M"=3EACT 2#VFOJ_;IM.+57?:^E_85JJ+9O6]%XV]4!N M4 HE']'S#O! 1!R?XVMPP!&A2!]!J!ZH\__XR I/SY1P>.%)--PX%: MY]\?#E@Z/]<4\A]&P,Q5Y__^V/R..-X4CO3GGW\<_B+0J?,;]OH3_KS71E'MJ29YOPS3 'X#=?G+ M?QNPUG^JB@*,X$_8(&M)LC_GF&NH3L.'I@#_$'E(0D6R%%'@,^*P-P-9FA[A M0JDSM(6A816'\04DC?W+4#4X1AJIW6P/F1\R0=#C>C7;YE39U775\96TSAI*&[X,*'BIZ%=@_8JKR M[X]\,'31&7/S%%+KI28>/2*Z;@FD:_K0I\3^G"XQ1PQ?3Q)+BLXL2YEE5LZQ M:B*KT%D1]./2NR,:)H[7,%5K%F,]T8M-E?7J<%B5N?;N8%N;2*MN>MPRFTR].Q1)?[A^%]<;:PUV M8"K[HTT6FO82 Q5IDEO*>C*IM,:C'B-2_FCK%Z4K P>J!(/5I.'#^"IC=Y$5 M>YWBA!Z0'C5(ZRK5843:']] TFSPS! _HC]>F!94&8_3@A\V&D)L298J]350 M@$]:P'8"(83J(>6E-:T-\I ^BE 5G5(AW]_(-13 MM563+,> GFE:FJJ.I#&R;+J&DU%A/VK?]8>SK[Z:WI"D):;E"1)IMWITSIHC M+0;JA7,HZ3=@YV)$K@WR1MM3&SF4=^:)8:/"S0SVDXFL#$P$R>32'30MDH.* M-G#'CER_/)%O"\F6*0.@V%G+U"NJ 1U.Q^-'D@5&I@9]I'T*YTB&8&V=L5&$ MT@;8 ,3;B+F(8/QY%"Y7XW9JSBU&*$_VRG.U+P I:GJL DWX.&W]F#=*22CY?C^X:-8R% :@EX0E(3QLIBKMQK- M269<9&G1TR3*3S,2BQUAW,F* X&+,PE.PX-Z M;-/?M:9;-0WY0S/N"HFQ7N(3"V&6':<:F:IIBGWF<<:O]GLP\Y_[(;P%!E#Q M0YS9?_[QDRN_[" + DD1"Y(MO_P$P[\_;%6?:GY*)/AN%.2@?+PCVQ3+_=)6 M_.!R_QWK[G;["#[:IFL%GX(4U:\-^8-YK\F/BWAR3?XE8H\6T&KTT5R*BX^\ M=MP88WX8NWX4!%9I^TE5_,\#%5BQ8 C@:!HO72CMQY=/'_ZS_6K_[=- QA[Z M"M)$SI^UK.,(GGQXT>:7[>?M8,$.XD8V5IAA* Y M,ILJUH:C6KQ>G]Y41\%RH]%Z=4'?'M)$>4"3JEAK3 M84>K.O*2"2L2PJ83UFLB)R'";WI11+Q5)PQMBQ3&/3V-JL,^X&O=?"N3#*UU M"(M.N H"G@MH3E,"#># * ,HK&3YL8:]X3\MKA2^!4"+34ME8UYV6HMX>&W" MB9K@^%P_$PS[?N N?]_O!WZ,O[[S#U]FF1ITQH?;S,Z&RP2:E!ID&I]%:=^*VK M]DL:<.B@;5;PK\S@%RUXO8:)0L9=6@(WL_4N4BLL@'WK$=OE+7AHF/VR"7>2 MLK?(=?(+P:4G,A,?E5$5W#JWKV#"P\/NDVUXOKU0[?Q@EA) L::4.P0Y!:G( MAH<*!N]-Q#UCPEM%WN:&\4H9!?0,J?;F64.G;EW:+VS"S^&I?ZX%IW&KQI9 M26$1-T[VY%6[-,XL;IS+5['@H>#URP9<#VR?;[[:1:=8X=IY$O7YU,43:P.Y6(_L=*A0\N'&)SS'@77F9R:Z%V2^;\$E\E! UM4*P?$89V60G2Q;2-Z_(KV#"0\/NDVUX8QXOS@QTN1)* M,C&C5!BG9R(.D3M]B]=6Z?=3-, M"%='#MDZ6S5*%,8W"Q.DE"=F^40V2:*W;JTOQ-:P),P.N&( M/L_F)S/M_#N#OPQ7PQ%&';*5TG/M*M<5#!:Q1Y[8K-=R4^+6\R678NNG6=:' M/8;4>H\AX>\Q3(H$NI9=VW+$IE]H@!L4#$6=JXHK:0%C_5_8)9!=?PL>-QBH M,K VG'WPOA:2I32]*7@24/NG%/WS+0&9_&-*=H,7GCS[UDV-/#;HZF2_ 0] MA0A)*F,L&E;HE 0DVJ^CY/SQQ__I.#V?A=#)X-UCQ&ZX_P(G/MYK:'9N$@A* MG;YS,XD0Z&,7G[US\XI'T:XB"_ZI(N5YC'PN.> 4S_/B>\7TW_/GD6!E(ON/*H;,7CV[%*91\U.S/D?+C2OU%'FRT_*E,.)?"#\/Q MG3#)A$_\S=>;IX6R8A=P:[68S+H25D,X-55A(O1_#OH/R!WA_"(XKQ4@Y=E] MH.-39=9NSQLUP6W/J71JW*17X5V:O2V@'Z%WA/3+(!T27M@'^EPNC%6K.9H( M^)BG\;B\Z"7X".B? _0#WYJR*I.ZR95D^0B*U7-<4F;L<.*&-I% MRU.AO_:9GZ%C%*]^.VDX#%:]7M'SU&FOB+HJWUO@EEA(L#>O\L. ^RA2O0+" MCX6I#:0.BDC5+:+XJD"VBA5W4.1N/A\3 HA',>IU,'X8H ),+ HXGLFA7GS M$!5E;&5;H5WNOR6(1]'I%1!^)#1-5J89HKB(KU"D.&\DX](2U\);<>6&$/Z] MXU)_HTU%&IO6EDL[**S"T$2R'6!MKO=AAA8(J/G0]HSQ:(;M $V1L_F)SM&8 M."U[3KT6.HWN[ZLY)-\&6:?2+XI#OPWZ#^//1G_9(+U50Y_HG1&8$O.\-F!" MEW>Y)9Q_Z[CSTH@^%F]6YLTEPJ8,:B*54^D&PHHENA^ZE,H-0?J;QYD7Q_1A M?)GRFKC]RU!^EO'E9=&])%XDAO+;KPU4^6)6R@M M])55J@XB)1W%D6= ]/6"R$3.XBN"A_4GLRDGC,>+>:%-WY9S'2*$1Q'DM7%_ M&#Z"PJ1DQ U.9H%29.*ML5WE2[?EF(0)X5'L>"DL'PL7G6(3E*%*\T)IZVK2=!E#UOFO9_CVSE]@0Z\TD M?I%/%RHH,J=$4S3[RK 2.LR_:\']%7)&T>1WE8W#^)(KNZ851\WVA.,:"9W/ MU5I<,73QY0U+P;>..*^,]V,Q:$9K);.>.F@)4F_0:"6MWJ 5WIJJ[ XW]3ETJ)K\?G0)5UN&/#?.G*],MZ/G?&L(L596EXL M!!7(,R5+\?B039>)I'?HO*1.':S.([(C3G%H!+(X.QY#-_**K M1NB_L769".>OKLFHQ?8R,=.&9;:=[T]UH5@:"'3H(I;;!/H%UV,BI+^V%J,6 M72O7*'9G:"XWKC))HV,IE0CH-[8.$^'\M348I&)I8 S,^:1-T@5QC,I#(1OA M_,;67[X SC^M8L_)(>M$=2<]OJO(0LZHL//<*,_,!U\C>?*]ZVQ&TO!BL%I/ MU+BEF$]T)J5E ^LM/&)HA&_5X19Q'T6J(:FS64WH:+1:>WB? CH:EDX&9YV4W4 M)JZ2MJ94GM&[@PCA45SZ,82'MLXF %:B+^A.D!1 M'!H"]!_&G^)H1=:9/%*>N RU0NG&HM]HA\XYOR6/([\ZRB._'Q$7R^(Y+HUN4K&&W&T5!.7 M-:I5R3/MT.U$O)7Z0%$$>6W<'X:/%;K$X?-1011HH1-/E\L:*%.WY9B$">%1 M['C-.IL%.<&Z,CKP)M(RWR"Y-"5(WFWE0D($YBAJO&J=32PGD)[70LD)[S&Z MB)O8HDA$OD<4+X8=RT>"Q0'5)K->P8M/5)'1QDJZR?17D6*.(L4+K:E?H\YF M9YY1V8PF7MX4%FJ[K6)L! M A!FD11$$>=7P/NQ&+350&NS-.?4!+W2-M#)9-0>U4+GMM\NX+]Y5'IMQ!^I MLSD9LH8Y+>&3-&(,<$EE>',:.M_^A@'_K2/7\-79''9T-"&HK#A1%[/R?,B; M1,.)%'P4W8;R/'--HL>65)EZPJS>4S6$5";I]LW[W]>JL_D%$//R&0-/'_+I MI#FL"[0A9+EQ)457RE_#F%^ZSF88L?(I^X:P;('L)3)*3Y TJ9CDF]6&?F,7 M@%V[SN:M8>,T8!33>BM.E<=QP3,X/,^V1E4F'SKE$=XZFV%$Q3G\;]%HX-7) MN#1#W8F+J%-V8B\+W]N#_@+(>:Y"ZX//S\Y<.)FTJ4]-XR'*VK:"&ME_MV5J M&J1H ?9B 7OKQ#9S?$DQN&%Q4DJTB1)50X;E7.@LSD&0Y+"C3XMF.YLF-: M=M%4#:<%Z>):6TC5!GFC[:F-',H[\\2P4>%F!ANZ4Q-;K+R''%M'Z"1Z?$48W,* H>E(G;X9*?R( M![URU?906FOPKCQNTRTR=$CQ _:].5Z-_2KL2()M#[7&]IS@J MJ[..+LPRTT1J/HQ/I^&KB'$#450H)'_+\K)I#.&D]0SH.TUO"O;P4#$M9R@- MP3;SDI2&^?Q1:>Z&';TT$+@V-0>.?]D;F&7\W?QKVQ*AEV3/-] M;E@X$<4$.^HIZ@1OY%8NV6QR9/C.N)S&PL/IW087,?Q /[])#/%5A:NOD(DN MM N-?$GI5?)VYT9Y>!$QA&H4PZ_(P"-R2&1RO4EM*/?8F39$"[DLR&61T*:7 MPB&'G\W&(]>!64!1G:PD!WO#=QSBO>_]5'[-4N?0$JE@Q)427#Q_2& MH4H1&W%2'XQ1NM>8+UNS6I8B;HJASXCPX5R_/G_?H\-/LO<-,#>U.0PH]_O< MO"*7'XT[>83$!$ZP:';52W4I/#(#[]P3^K)K\B(GOAS"-S*\_WM:[V6>7XZOE]-<9># W[C!NLO-DP,'YP@M M#EH3C\HQN4&%S9(@M/LG;EMA'6/ U\?S$4_K_7!UL.Y"M[O9GI#N#U)5JC+J MN\17@.L;?+0(C7MK7 W)&*Z1L]ZFNE1U5]^Z]#-.&V9%NXJZQ#BY*.3RBNZ$ MSAWS5[$>9O'CSWH7ZLXT;HTKYRB9D'0(WL 7%0/UQNU"FW*RWJH26L$/:Y&" ML''_L"A ND\YF62NWYSP2"'E&MITW@OOH:3K'\,/&4>/'7NG>R;F&56TATJS M%J$R7(&RFJ%3PB$Z:!XVGAX>[#87JWDODV[:K$0UBNG!,E=9AJ\ 67B.4H>, MHT>.+D\:@Y&3Z72**%X:3]5*&AI<[:8Y>M[#PF?GZ+$-/I_@1W7'& (2;HM& M^;J8+"X6HUPNO.O+X?>CGN[BN0[W#_THJU,9:TJM0@I * ][U?:P8Z0B/^I6 M.'K,CR+2H#F<"RXG\*)%+DM4*CDR;EI%7\R/"@=/#_TH)8D NEG%5#2-Y[NN M1DLS7K]I;7PI/RH4'#WB1XTG6;DJL5Z+U=-J+TXB#7PTN6F.7LJ/^CR.GGBB M)ZL:J@/*ZAPH!0-V-53[&F!L&SAVREL? _>/&>PEI:&7H8"JI#_LU\M0_!#G MDX.QP&<62$8%4U4*WUTGCT513I[R8Z+XZ9P_D_UA.YGSF5@)SM ];;V!C5Z; MB=HTEVT(2)/"U-I8J&#A/8'Z+MB\,/T(0:>GWV$G]/PLZU)T0!:T(5_2FH+H'9&ZQ&%VM04^%F. M$PN&G&&6H0T0WP6@%Z;_I1#T7";P4QRJW:KKOTX0VHQ5B!^ ")Q4_VP,PK3XO))>% MLE!B)DY='@]GIO2UE/_%/8"0PN %%Z"?'.=3198K"FI2GAN(4A;LU=="P:5= M@)""X"4?8.%,$RIO$"Z+"WI#3FC+)1+>2ZMNPP?X/!B2036ZU1F^XS@+2NI M5DO27)#R'O[,0S1(ECSRRF .M/U+\;9M"L;4=>R@ ?[\*RM LETK"%BR%IBY MP)"]X^_;:6DW@(\3U1ANI6%H@,+-FI7O(JK3'C8;:0NZAI:P>8,0N0S:+7VO6"L2U9LV MJD=KZVSN8--U8,FJI/GUTZCYPSAD7%%T#^.%4TV3I&N@D M:_W2Q&T6\Y.J:8%2*[2)B&?F^&@+CD[RG$MIU.E+:;M-/V$I#1=Q_ $-CQ\* MEM++V+41@=)BL3IU:YQN-\ZNW=]!.1S!\1,IM]OT,Q8AT0?%"DFW\XEISHJ4 M,V^;Z&S8X?*ZVB82_;,+P]L7NC!T1Z^\O-"UU_03:)?PH;:AW,/?\L*M%U&A M7695+(=WJO,VQ]7#ACE_U2\!L73B N%NTT^@&R42#W1[^'N9MNMJMYXOHPA> M$P'?Q%/:Z.RF]QUT@ZJ+.)%NNTT_1\O1#X1[_+#2YPV-&'48 4&'5;Z7Q0$E MAQ%Q4'71)U)NM^EG:#EL+9Z)0,D]?.CBC$G3,B>Q^&QJU,8Z*CKET%$N@6#8 MB;+ZI.DG+>9#C*7&=K%IN86J@)0YWLN/$^A@>?;LP5M]S/.$' E1*-#)1M^9 ME%G/0^@EGQE)9CT,MG!OL?#,X?YTO/65.A7T?&$SB]T)*>"\K(8 MVB379Z29L&^69KK$&9,; #I2''9Y3I_44;HSIE-*GS ST] F*B*@AS&?>O:[ M>4M>)IMN9^R5D%Y.!^4E?'=F'%IM?%-W\U[@,0!6,,=Y>LKJ"%Y&2J+>U0FB5WQGIM7MSS L$.V?.[]K;YZ^! MTD 'KF_J+1BR3ZTYJ&F2 94VL5U(2*27'ML9YX62.W3[_1562XQ"NZYT5H@& M&O)%:GU+?"XD2SER%==+>F_;RJ>>?[;W5#"*6DNE20OOLYRKM+*=D=]J0=^NM^L'H M+,F B&DNS,U[\G%IE0*)JL?R.1XS*K*CL63HO:1JSM;<$YG:]BS M0U] @D86V-IP=M;7=+=#3BG^ M66*NKZG#X!U^*1N?\4U5ATVX 0^_M0>2[/_&;X.Z1]F0X:#%]5Q(&/Z)N,XA M3*I'8:A'KT8ILS0IU=$KP=^!N%:>Q\3GD@-.\3POOE=,_SU_'HG\S\_S]O0 M]QT"?HD4^%/!>'>2B"YUA:7$T@VTG>TF4EPEI53FH5/RH4L2A0$#3Y=!WH^! MJ;;J=Q5T.)%8).[QNJQ5]= YRJ'#P%66%4XTD&D+**J3E>3@ILZ=)82][]NJ M,ZH%!YFA_V!,_'^X01LZ&(RA%%)LH\"DF&HI;5I3<]WK!C!Q@F\F<+G(H, 8 M%!$6(1,I+W2 V9J60UILUP\^@QA?4\/@(D[Y6H7:'.78?/!53%EU-N8X#7W. M7=UB.:,F6$IVT]2TA>0QKC,R+3C95M$O]/VP2@.?S%FF.RV7TQL\^:]M2,9P M_3;_4T5:JKJK/XEGMG?F,3+TL6WUH<).T/]KG8BK/)%G>G)!D(1,>3)9$K\_[O '],";'W_\CWO,^7A$\PQ7-W-^[\0^JMRIX) / M=8IR?]+TK$[>&:3O4Z1KTFR)Q1*J+5"5,KU>9U3-4_E0^I&ADJY0R\!W,D&? M(@2XF^T!HF"5T5DIKKG#1=9=3B,3<]-"QLH$Q#F[\X"2,'DXS0("$$O;AT#>RND2 :7:"R *'37B\FG%O&PX'DXS07J"S M)IOL".!J.^)R%83Q/+KI+# 4URB/;B[12*]ZTK;B3*K4/DQ2E_9:2\:HS?HT4& M3U"%&;6 G.'HXG[7EIYA3C M?\])$U@ZE"9_@J;A-]ENE2Y/XW&6<4MH>SP> M+'K9;FDX":W:.'*<[87)?4<;\C;N8U0FH=#I+L;.-&$L]OO6)-T-;5@?#NZ' M4?:/;%!7C2,;U,][[,*=YQ*TXJYP0<4<2_ JGD=.0H>F8QO&=XGU+&Y.QFET MH./=&PD1,M%#31?B1JH27B]#U;NM01AN,;E(!75GEJ7,,BOG6#615>BL"/IQ M*5RS/W]9[4\H'_^TSL"GEX]O%7):AYXF^A.<-A,$:0\<$ ^M)_T9Y>,_K3[ MC92/OXU[$LX.]&6]NNQXY24^T<<>.!':?T)'O\K3-JI)'6,2V<9P&&M MH5?X^Z4"BQ-J4=R\/+I8KST6,QHSH8=-J>BX@J:CH8RW(WD,D3R&-8'UG#S6 MU"G05 -L?PJO0.;MTJ0SS%0,U).2]8S>SJB];NB6:5\4R./$CB3RZUG(Y_(O M9=/V3W3Z1?P@@X)*]U7)+U?/#1Z_W@\E>?BKXZ5,0]EN$./$[C#?Z)70=*N6 M7%7$><4@0QLVGC[CW7W,1!CV.US9RVL2C)!/)C0;#9O?LW'CSY$D$CY\]R8NK M6+,8[XU:;*ZN4X/%K,ZW%\EUG"A/@RHYBM&?_^BH4 U*MI^-7!;)$T; MH^BLYJ#(S%A6P93$ASL'BO3U,LB?S1B#9[;];'_;?O8[>J73*6PO]E<2WNSF M&D.4'I51L9!(U!F4>:9+_XD/="CP&7'8FX$L38]PH=09VL+0L(K#^.*@/]4V M21R+_X*/?*!#U0&Z*)N=YCR_(%FT+=>:\WC-*W1FAS,,M)#_P ?ZDS>1LI@O M5UUI-1#[$[ZJY?B!,TK*E6?ZW#[TD7D^.&_BH,&9JNN.+%9G._75W'!Y8CA\ M9K8/C[V][XPZA_(6L'0#WCJ.+0AYA*T$9#[NKQ2^O\2P1_ JP0.[+ZO"KJ'J M,*UW,O_@>?_+##!,736.O?94L=E[Q<_]T9_.DS23$9GBP*3=B5Y$/1G02Z=( M)@J9Y\$.'_D "#9&4%R5\'B%5R2=!0VCEFK9F1J(/X. S3,O]_I37?Z")#-= M2P;V^N,(2$J@9B%=_OP#_Q6S'4^#VEJ7ELA"59S1+PQ%_^?W5%(4&#HB&A@X MO\A[,O[XE:4.1P_?F>L:6K ;+8A&?O]X\E9KJ!J(8TY_X=@]/75^0_X@(Q"\ M@KJ/4_";G5[AP]/MHP.H?Y&!I*N:]^N_3>B*V+$J6,0:IBX9__T=_&JK*P ? M]-\:]/,+_AGS_R$V?_@OE&(C"PS^_?&?IBG#C_94,M[5Q?JC_^ OPR^5KZV_ M6:SGLOG*MQB(I*E#XY=/.=A_T[]M,68.8GXP[B^#__/3'P+D@+0_&-G43.O7 M?U"*)F0,/OA__X/1Z.^'UM,C/),U(%F_^J8S^OV4?V M\Y7/5O]SW[0@J!Y:W/O4MTU-56+_08/_;5OX#Q!'?GYDW^\G+.I+\F1HF:ZA M(%L"H8,!?&1GE/"IN6JK_6 ;XJ^1JD!W(B!@ D>)/0I*@?2)U( B,( K(@!) M623[9%_L2_&D2-!)E$Z0R7X_3OU8<^A]--N!@>\6 ^O)#/M[;UT_1V\QMD%4 MW]04V%:H%IIL)L8WF2;+__.SOY[(U8?%LVFA46@66#[&5#,QMI/.,]4<&TMS ME4J!YPM<]?UC3;QYJ/MC:TOV",+3,8V[6.8^?1_#48I,GIEV!WKE82HG8O/M MPZ(_2*"M^ MUN%'((-5R;+$1%_RA$QMM9JT4U:-3I425,$:OC)J#$7J:U[N#?AK\3:Q9]-> M8^1?%Z)HZR M?61MT/#XH\G9#NVGH^PVG /+\>^FV# QX">T-;\7(Q@7('! LF^T%Y8TW7@; M.'Y/';[U(T3;6K^=;WQKMWGSOFP%5^TX__Y0X3!A: S9:&I]2=-,IV\N?YQ' M].HN#(R!I7D-,#4M9T<*$3U=%4BUT)UP;$9N9*ISWJS6#R"W)0#YJX);=I:6V)$C&O$,.HOY>_U%UPVULRSL1V;^& /F70SQF4WSR4) M\OY!0@,:_/0!_S.0DX_Z9X&GCCW83M7PDRJ_$&Q?E<2V_P3?ORCD&_(%[T7/ M:Z9HDCGLF6=.*.2,0FVT!'ULG=F( 4D2)'3%U.^+X2_%/:<*7CA3)\Z!W M#8PSR6,M&!2[SD'M2&.RVP75<;$O37($5(NH7-?J0=;M= I4_ W",0*[B_EC M^A:V\B-N$->(K&9D-9]Q6/V*?$$D?6 V3;L0']03=D%(DU.F0<7;PV)E\7&S M2=Z6V6PVF"I?\(UC9#VAM)YP/C64@XL4X^M:7^9?\<<\Z+][?5] M__4R Y_K4:5-?5.4-#90H6DR7'\-]S*9 S98!\S";JM!KSL*N"I;&27?KI(3 MW69IQ]#Q6=<^5, OS0Q%,80@,9+Z\D[22*+!]X#&',>@^]VJ6JIN6:L=X8,U5&4Y]YW3YYW'T!#W[%[N4 M9">8KI_JMQZF&9/LF#T%LK^XK<14(Z8Z=DP>!9')W^%Q.3=Y\01*)&B,QD5, MIH%(]@$0)=Q/DZ,8BI,8CL<5>9,77S_1E,5%;4ADEFTDCWI3D2IVA"P)A@Q$ M"?JT)=IH=5<]M&"@B*CFZ6362'N4WQ)_VA)KI>AA(H-E4*2,I2243O.$5Q?Q MPW=BB4:SQ*7XQ(03VJ@JUJD:TV+\^ZN>MC0FU7)GW!I)@CK"E5XA:_>34Y[$[P/M^P%EG&R#,,;+GM M_317_HF4[OH/DNN8VR_6ZV[!-WN^RZXSLVZ#'JRJ[4<(3QU_<^O@DXG[)/$_ MN^CZ%!_S;7KGJ9]O^Y63II8Y]\7KT^/QM6(J&/*CZ@A*-:5-UW L+VTJ&ST% M^3WMCZWE:- NL&Z?YO-*BBR5XW41#9!QNM7) $U:2/Z&C-/\_"?L6KOJVY#L M'B,_E6%ORSP_YU3M>^LG(@^_-O+. *RFM"QL=C?)P?MVW1@(*9:987)38HNH M7J@1JFTLL_B(@9#"WP0I'$7(.$DD,?IE4 5QT]64P2F6-!"^& Q-.!B;6+&B M"PV\H@:7<4'3>G7Q.(?UO9Z,G,*0PGWCGK^/L?I4,SU_L]/-8&E/J0>0LH:2 MH:Z"SW]'4+HX/_848:QJWO\=%C1=)FJ+T':#_+H!8)[=BV$4Q?(OS5S_IZP: M 'OP8#ABD4G5DZN$X#:PK-2N,H,5M1#)-SK%.(&BL>I]+*L"38GQC@6 4P5R(;ZP)RI3 M6':(A9FTE;=1++B7^/;US,',OH;BN90\UDR(9ZVG3O?R/TQ)+F>G.2[+\J*, MU(CJLC0 ?@[Q;<%ZG,+] TNW':=O".6GNVL6%$-U*FDQ=@EDU]]N'N,& S\C M'T59EP_8(6IC/FR?!EUY[\X6#QWW;, 1J8CDQCNZ1Y M%X- UER?0S') A)4, KX%=N.^W0)_^O='MENB7, MJ*[4,3M+"W<.-U2_Z(=CY ?=A;\OLS)<-J'(U7SN':P,<\L"WW9RLY&00XLI MU!ERB!3#!TWS;S@&R,129G=72C!/CI%- ME\^?$MNQHS'JGMSLS0K^\OO<.2.W,Q@3#F"@F8LM#+:?$7^+XZ\^5*<39 '' M\.JIQH??I3XN W]O-;/KS+/,>J!Z?Z?YXHWFJJS/N ,)'D4DS7) MMM\4)$4$M*0@XK"#C>%_G10SOUDS?%WR53>;[@+X@:4\\B_#B4'G/ M'NK[LBM?&Y[73KIM0@D/P_N!'MD)XO(NTD$1=DA,I.X2F+G1R*IZ]5>"?'^K M,F1]4,'L0<4_B=Y>>OXN]G_0>[] 46PJ6;&Y?X7!>Q(_$6C."9J-PEP?I'E( MSN+2BBHV6G9ZDI8'XY;76PASS0^#L%70UQ,JL5RT371!*MS57ELC'!ID:QOM@B_A(OF",2JDJU(L[4^B?FG M[($3*Y?3K\+E$Q*N(3Q#\*$TC+\?2_'W_H!8WXO)(P IZI?+AG8:!%O]_!S1 MSL[YO[!-(G$DV<&Y$R4F:1ILX9_#\S-/,U?U\TZ.&>N#30/XXDWJZ>'$F6GM MGCC;I*)V,EA;S/CI*=^-\ ^;Q137OZ#.EO^]BDJ'$_L)WYMV'P@(; M]<=P5OY#07OXI#^>S;C./$T^&&-T\;-QR/-V%][.A G\/M-8V>D!J>/IO[IHXLHN?4L M'M06L/^^CC[:(;E/\8UZVETY(])X,UDC38%.S\K&--_2S?%KT<:']-&-:*5( M'UU^@>UM&@?*M!33X/,@)LDRU#A08J#T^>)F^2[%T6]C$*S(T1]L':HJV(NU MM=U0'G4X6^_.]Z7@ZZ#'X8]U&!M:YL(9;7^^AUX5",:F@(%J!.G?8'N(3S,< M_?W,"(-?L=]WVV:O-GAV? \-?2]JT_B9L6Z:^@L6WG]D MV?(JQ4'>OI;WCA.%[U[N.]->SNV)X./T"'K] M^*OZ,=KR?XW]@=$VY&-YE<#%"92E;S6&IN6=:0.N[ZA:Z4T?.]Z3F.OA>;,F M+U&<5[T!5\K$=>$U[ZE\W"#/Z(;]IV,S*$KL#/\9UEU4&EI MI[#2<=%_8LG(>X*ZMC&+SJ+=EF'Z#B=F3EF,/195?+K81K"]/FQ__.&?#\1V MJFL=3_%DGBH(."5GW/'<[66LHZ[+RY7\ M]KR1?=B&\Y!'9&:^E;R^P\P\<8NH>S1RBR*\7LR^L,_E[D)H7;9CS05#3:]' MNF-E^,%H):M3+\-RB]'0+<^-98E;7-+*?-L8YV-;,5Y>,-BME#RU0+!-&K:) MK?]7&+R0+O?/FAW-\JN#8TN*P4(B=*@-,U@'=.UUJAU2<%W6_$@15],*^M(\ MO_.%"KN&W<8,.$O3=]H@#0,'W9 ,694T/Q'CESP+=J)N;J:R8_Z!;E5Y[G0/ M\9?T]]&$>2SV:A;F-'<_%#HTY"O.P?J//0*:ML56["^(F& 59EUT\H0UCOUU MV2ZP0Z9@>7]^1_0JN4Q-!T9S.$$ZLP79K:X6K'9T&\EGZ=40[^-X+AUYFT+T M^C(IX\28J:5J,3R^ONK@+K;!:398ZX1;AV>AY?7. M:=OO_.YQ]_/C?FC_9E?_)7>Q!;! S'P*[G<&N!WL-:Z<3=/4"@GC!8]G1*;T[P D(F$3$'9 M3 )%)/M)3)0H)2Z"N"(G)"(I@P&].26[Q)[>T[GY[B/W= 9KXM$MG<%@PGI+YV$L]8K_^6)A]4:APC4*?(QG&ZU" MFN5C::Y1XQI,\T/W.KXYZ'N3K*^! MIA+_\Z8]0O<8_KYM0GLIMB1Z3[^88SOS,>:=6W$.3S3O:\333W4_22*2B=N8 M8#B/:I]&9?H^$;\-*K_C+/K;).83L7G5O2E'^/N^Z@CG6@I_V<)")W&;)SAV MM=6)JX*O!=!X.T9=7RUG+:\$O4;S-F1>,=:KH MX;XA*<)_A/](M4;0NCJT'A1IH2D5WV[.:=W[#0%Z$M MTM_GU=^/+C,'W>@T5V%#I\0?76=_#9.;@O6>J\>R0 Z<"XAMBGJL=PP>4?.1 M9K^FK)%?27HBS1YRM$6:?5^S0[U>NPGM[F^"M< (MO/K1_U5-FW[[YA_U:D. M(G5_0P)(?261BM1]R-$6J?M]=<_6A4*S&W)5'^P$'YF: BQ[LU$[QLYTND0:_EDPE0R4ET5Z64(/EEA7P:**/: MLFO;J@F5E,(8DN;9JBW&B:MN$L3O8X]#?#BO_CC4P!/>#M9WIQ]UK*^$UT51 M_#8-8+O:TR722.%>4H;P<"UR1AHWU&CYHAJ7J/N5E%0G."H(%1/\J&T^^5I- M,VW7NJK&)>YCNT,,E.?.(&,/HX3#8/JFZVRO1FNH]B12J!?=#ABN9<1(H88: M+5]4H9)^U0[+U&RHJ&J6*0/%5TTBAA)8_.CMGQ?3I.1];#NV0(L^CBY2DY&: MC-1D.-%RRVKR] /6DN44"IQ?47+G&+.8I!-D,O'C>N>K"_>Q8%#1X>H(^^'B M302M"%I'O$^L#(:2%GAVP1VJT/&,4W0\<57'$[N/!<.*[8PK(E\BG&CYHKX$+ACK MVMS LJU5UUWQQ+C)6U=/WRS 9T'LFNIC@K6B2W!#LKG;KR-2'5>5G6&:R=B MI#I#C98OJCII=CF"4W%LD<91G$2OJCWI^]AV.)$JC%1AI K#B98OJ KY0J[* M-(4&RXM),H&B]!7T( __EIQHE?/BRB_Q6=?>A2=E](YN-W>_]*DD2F,#621! M0A))FL#$1 +#_&T!29P@) 4E^C_^[-S]>Q\B TW[_1*./E9^_]G50)S<.6>Q)C5^6&'_S)?A)+![ M+/',93C!O36QQS]]&D27X5Q$?8?H,IRU*+]:"_S]M[[L7E*%80?:Y\4:_G!4 MVYK@F]L2'\88>QQDL';]TGL^>J/.WA0^48&^7CCX*F3WAQ7##BG^,,!7"%[&X(OG8[HM]G,3$.$D0>(),RG%E>\?1^HFGI44_B2$O6HY3 M)..,]T=]ZD ?#A+&=D\2QC9DC:WI&J8!_U4P8LV1Z?H['>T[_P97 ,U&<%ED MC-']^WOMOT,UWMV3C>$4.@I/8'T91\7$H$] H0.8F*02 W&0H!-24B8QBB#W MA*XIBQ:!MQMZK6<+;DX5)- IE;5.7<1$XFG+64*CB[PS*$U<4XDGRKEJ2:Q3 C3*LF!]I,:K&(F40+&%XVQL6A M2!_VKE@UM2FFX[B0;HYS/3<[FTG(0HP?MG27S&!DUSE\0DO+0EIUZR9=&HJ) M(S.:6H0B+T2%Y;5::29T^U6Y7Q>3ARWU^#R_E(LDRX*A5>TS$K6J: R,/8Z0 MOD.,N7E7PU')MFM6OHH-$A0$$W:D_[X>[QX3W!IJ3&2IYK+%TG)OA"T0VU/12Q(\Q?&#UN M:#7&U*2D.EL&1.0VG=83[W4Z!H!J%U0+-F11PJDP&Y4F(_".LRFM%O9^- MJQR:(S!&M,#-):2Z" MPMF8VH+-MP8H?.L1!.A*W2(Y#BVCGE"<@]8*B[=:<%I'(* 6>F.REVZ)J)L; MU1R+1@RT".EZ! .2:%=7F04NH[GIDL^472F[HA=^TT,!J/:'+A*O#5&\ *IY MU210S1] \G!:A247QX%0IP6IEG(==K+*%2%:\2/( JL6.D1KUF0R&Y3&4WS1 MPK1E)J%..8(L)9XI>J9J-]$V/FQQ:7&> MT(?PK4>0Y?5[I9E69VMHNYNOZ0A=;U=6L.D19-7J2*_3**U$E$NI2[)57_7, M'E1_1Y"5Q\>Y(9>J)"= 4W/>JL+GM"1L>@195J'71@0#1*>7JS.FD9FT4^@X;?+3PLR M+#B" 4VWBFP^IPDH/C"[V629Z.KX4"2.<&N Z$#KUJ(,J )2*JZPNC!AW,Q")(YP:\HG]&6+J#@3;P[ZG6)-GBDC.( C MW%(0IR+GQD)YDJMB7<"2 Y7WWWJ$6[PE,]1PU%L*N41_-2JO$E)>@F\]PBU/ M%HUA5JZG4%JB39EECBLTEZ(I,GD?1*[C1L1 M;_3>R1%T>A'X MG/O?CD>_Q&K@#]:H3'[M'HBMM(U7P?ND>J M)E(UWXWR]Q@5$?[]A#^RG^1@I36($S[DU)]O[HGM:N-N^O=]FRK>-.]WFK[O M0XC7;-$WHL1KQN'BE\!7_(*^FXH[V-UV\;P?244D%=]8*K9W35Y2,%YS7]Y% MA-.G?&R&D4<0;MWW'@X?_OL U7""/AW^_8'_^%R$X_<$M=UJM]V^B$V7L: T M<6R[BR]$>L OR MH/F-2;8-'/O7&\ZJW;1N^9(JY)MHB@B/$1YO&(\W9J#"%#,^.?CH_X/A:S/F MWX/H5Q.2_3_ S%7GDK8^@!AYT;?B1?^?K^47QXB]0]*Q?]0E')*1M20YN%C( M-52GX1_6%> ?(N] ^$J6(@I\1ASV9B!+TR-<*'6&MC TK.(POO@1DV'GL,/@ M*<86N8%(^+N\_82GB)")'FJZ'CF1JH37RU#U;FO _(@I0%9U2;/__8$0/V+K MPLC__E"7SB_#U173V?S^(V9(.IR]:R-#29K^\B6*,13_/^RC.#%.6K(L#Y*M M)6DN^!&S(0?@4_#-FXW00G79(W0KC:!IK5QOJEU!GZW\0S[$CS])XHZ,D__\ MW"=$%.E&,OJE913#UT**)45GEJ7,,BOG6#615>BL"/IQZ?)"RHC:5FR M?Q08^B@D1M^1&'Z2^HO$*1*GZXO3^=R+4^4I)?129D8BE4D[08PET._WT 0# MY0FZ$R1*WB4Q[!SR=&->PXUD4F!#GT>;%8$H-KN=V.QY11D%:%=*HFR$J:TZ MH[1K0]H"B_'EZD5URN$XH==3]!1MS[IM;E94*W2A+L9]]X2@DG=$'(UR*)&< M?C\Y/6,BY5V".BT9ACZJQ1&6;E?->FZ1,KHK!@HJ]'L(DKQ+H%$:Y5;2*#4+ M3"55B8'E%!CVYFX*,[A.4-[;(Q&+(L$7%.<%-P6?/U*\]&2NK5_/Y@=MA(M= MRQ9C*,$]G8&"M9]7KTR*78)L"W@"G6@3LI8W MD#E10!D%E%]*J9[-X7E->S8RF5HAIU03:(YH=9,S>DHHLZ&8#';) M8/0=35-1BB>2R.\GD>=S:]AC\W;B#8((CQCFA>O234B-JLT)VH M);'&IDEY2A:&_D4YT*/!*>(.PRX;W$6R_'5G^S5E^7Q>U%N%V4E9]:Y7K)%" M>I!T"W2?%T4]N/4*NE$XB=\1B--:M?."[+AMEH;:S6NP]F1F+ )-_N,/ M=H)'LW)'OG)'SL;"SJBUS;$$H)T.O.RO5B#V/\T?EGK.\P M]"S"=V.NR&VD>@H&1.)0]:_O6WLHSR\D1?%A../#:#T^;)[,HU ]:%%V*6NN M3[*<:2H+5=..J%6Q.$N;E%&I"6FV:#%(HL0K3<:_G!CZ-'3\CJ2CLU&1H'Y# M03V?V_-.2>6P<:+)=,MME!Y-LE8\W^\9_-"75.@ TX_SD .V['? \WV:9Q^.<5=.0GST @3?[3J:DZ@.T MG9-LS69=-('612PHW8O%[^AX="8IDNQ(LD/D5YTJVD(C(UOZ.%D4THM"H68J M,ZH\8GS1]A>CB#N2.LW'BG(Q83FM'=6B>:LV):">44S77\6[B#H]6BG],Q3F M!29R;8UYYG/91S3DC"":30+GC(FN)\H9H\;I=6HH8O1ZKTR"B)(YD?Q]&_D[ M]RGL(P(H"26KGUBUQ^R,J5->?8RG.\3"%T!Z+8#H'7EB482O[8R$*1/TD4M\ MRP4F52@7F@66CS'53(QO^2;J(L)CA,<;QN.-6:DP!9?/ M;S-XN/)N*GG^[421!WT['G1T@6B8TN$;0:JMY>CYXHB+3->J(@Y59MT)X7J] MKEUUS86()=<%-!)W2?JT*_,BL8S$\JN(Y1FSY*?*I;#@BUI>H"C6PRIVQJQ6 M9V:][LNEOWN2H.Z2\ MN-2WG5)PIPX6 C( 5LI<#@L3? A'N-Z^2-\ER--J?$7B%8G7]<7KLG?=G2!? MK2+G)AO(+(-Z:+\\;@HM.6$O?/GR%^B3^!V1/(M\W9A'<3,9%,L%RFN>1A2M MA3-:BT[)A\UIV0A4^5&>GM>D&#NT$4JJ5B?M2;-=Z9*%JCQE1#RH1NIK4IH\ MK0YT))Z1>'XI\3QK1N5D^9PJO#'#ING\9#:+E\S!/%F;5@/Y]#V=!'%'H5B4 M5+F1I$I&G:MP!LK#8E%T9B*$>C%2?^GC92V.4#,4OTLDS[(%.Y*G2)YNRIUX@T!Y':6,4%/ SJ:HA3M*AL[JC"]0 M_@K-71([RR76-^8QW$;29+N%H($KA=R0151"-Y#J2ZQ!Y M6Z<)]DRMD*V67AFR.)EG[3'3:O%F(-C0TZ*H.YJ*"HZ&/VNS6^1"/CRS$F5O MHF@SI/KO?'[-*4GK.# R8DNHZ<(L[4ZF;#FY+'EU$0]JD=()XBZ>.&TG8"1, MD3!=7YC.Z$R<(DU.GS!'E9E>%=SD6&\Q):5!9X>^-/G%R^/H'7GB$NW7]AEN M(V]3WDO2K"]O,0=$*^Y?7JQ=)OKQ8B[!=, ;5)I*@\4?B3*&N_YY'3,7-[QW),\R]9WLVH/.GD^B2#I*T$1" M^-6$\(S5S]\AA<,%4]&DI5)%I7:I.F_6LW%.K/M2Z._MC6-W.!X5&;V5Q,[V M0N:8(RVCHTQ1M/BM].KY-@L_O>9\)V-^_*[S?#QK(/&.G42]&8+TS$K,&Y#<+J!OA1!3C55Z[(3ED9S9F%0M'DN M86:A'DT$^X?1N_B)E? BF8QD\O9E\LQWVYTJE&*/M8K<,",)'% ;PBBURHH] MQA=*Z-R0U%WBQ!/;7]N'"7M69W?O[VLN310K1LW'1S2O7!G%TR;? M(E&@F=,N8]<8D*Z+>')]<1Z.)2]^\"(2Z4BDOX1(7V03]!&91L5B?RQG5XL) M!ZATS[(F@U)\Z,MT*REX'?F*=U]=M^3%U7'1WXER1 Z 78@CT M0_;]J;]X &)5TP$QC/X[BDVC+09?[-*5"(^W,JGO@<<;,U[A3!/ =_".*4]& MI@:=0'M[12R8N7">43AQ.ZO)89KMC>J?"-H1M"-H?R6;&Y(,_/8B&ETW_9E! MD-^R19 %;K./8@I!'V$I YN/^2N'[2PRK?S1Q6:AF M#Z\S\ <;N 8UR>(LWI$%-D!(2* % ;_^E02X;8OVTLTFK#EG/#9.2U59F5F9 M3V5E DMKW=(6*#RA3B,#G^AV\<2TF$,N[7M3VPFU0#W*K,:,0@QD+,K@QO); M" FH?*,7G470E-U7?\77),J=*%JO59H&1 C#^O^-S LIQ!(XAY@^/8(X0DBVCD M7NRJ@*LI@+X&=EOJ]TK\'W%:&A0QH]\,&%:14;)BU(F%R[W:D/?>P_YHX%,[ MX^['Z#'AT$+>F+M/ BWR> X?/?.$3&T<;9MZ+"1/NWW\G]U2OS\EHL'C4\PM M&R!;M[QIGO0Z]<+UIV3_7.#7\_)R3CC7-.?ML"Z M4*#GV+!/C1Q:1.(Z[%D-]DR)TJ)$Y^QC]ZX6]<1BE2H#-4;0G#&)E/!"AR." M2(OP,VE1RF"'VX3Z$]WJPJ='"R2982RJJX!NY11IH4=I@ADZFAYT-+M&=FN. MR$_%:H=Z5;4*.ZUZ9EF/&-7-9#-S 5R;,YLU0S5&F[Q@ED*C&A=0IZ!'%$*S M=+],3;^>FIZQ>]WOZ"E>Y*;C/K?>@KQ'TH#OBTVA%^MIZ/Q0Q"-TX48'*7.- M;LH#ZFB>I%N:FM,DQPK?DUWSO$7[F)G!LWHK!R5@]CI *XH_]\WH$*RHC75% M/W8SK(#QLL1,$0V82J[>)D:F.7GBN?LN,*$8L\7CC;5 M+%=?:;F_3-MU_YW3XY(C6427GHCNEF9[C;2TW%_I*6)\"[[P7 UW%7\: MH2JV-(\==Z5U:)?#B8?O.&*@-8EW2]I\5C5TJB!;07.LE;>[R?\#T:W'NZ\YY=;;^J[]34+=L)Q:^Z MUZ$C5M-!&^)(KPT109NN.@I7:YH582(BNTKLCR!REI U4\1,$6]0$<_GWGQ M$[OC?(4QM\2*Z=/%^:386H!Y.8@T,2XT <)9D[W;!X^>5^UR?WE#-\O4R2K^ M9-;X:F[1\ZOS3*R088!I^A''VKM^3[3G.;KL>Y)L:EW[943RA@EO8+WRMH(# M@5&W2HB$#KOH4@R=J;CV.PYACRB:I0-EMB"S!3?DF9W-&/B^K&CBIL$8_59M M,QWVN=8/=HO$]@HY'0>JFV'VK7 M98STO\X5(%]@(M>VPY MH&BF^280>7C"B7D.H\\T[ L29- M-$!V-,D I''X^N^2&4@;=S\W,M2\)[O[_/8OMZ^,QVX]L@WQW-E*(B"J]6:+_&GKWX#D/?\%?K MBR<6]R2! _)S(4(!GCJ1E?[?KJV\TM!+%*WH1I(9=30O1#M&K%5[W9>.U]/ M<$2!GD$9SVS8&XKU>O&.KGL40_2._>.J> M6W*X?86_;'>J3;93Y7,\T^E5"PR?*["=-MNANU6V]<_?\AD-Y)OC*K"M(M/B MF6(XGA;/-JK%D&7%W$_.Y=A2CFTSNX'R5QSI7U4KUYW:OANZ+.YCCEDK6BCY M;^^]K#E&P)%\-O07U3T?QQUOM?B_30)0B)8P482K\@F*X M+)*:!HG$& =!$D5E"8?V.B$='*I!#4+J/,!PA@;/07'H\D9K3HN0F* [RPT"$DY3XR#0V;(="#,W.KTVE(U0G+AV&> E*1?9&[A;J M=D%\M& *!6)>G6L1)?J:+MU,+J%BIY#P19MKDM]J;J=&-%E(FWFZ/B.-@JZXX@ MN2.@/X=QN:EP(I9\NS)C-*[65JM"O]U!M 9,#&JK0,23E+1L#VUX-J\9.C]1 M4%@FIP@R$8DD914H2RV/;4Y ME$J@EUONVC8$Y%,4HZ'\U6_U?.:3)UQ 8]< M:),1%8A4DA*B^;:;YWN442ZXC6FC+ >%,,:%P"2IW$8; [U5PQF]5 1&J '7 M578B0E"2=%D$%RL)K6W C=(6)B3%&7F+BT*(!.G*$%=UM2YRH.XMEE,M7YN2 MDU#PD"2I-I0WHDZ0B+"Q3,>:6SX^-@,1.K+X M,V)Z!:X(UZL%F4.(,3:#H< MP)&5*FZK% ])&&CT=91UE 8_@BKA4X\LU;K/-"!S[2Q'33FO2 ?3;6G.;1V+2A*2& M[A''+TL$8927?(4!"UNQA<>D"5'US7+7]X?K)B,9.";T>'G E2CUK#F#0Q@#884) ^3CHMY?!DA:)/!"-%4X.H#[U2H4J M8%J,9E3G-E,1JX.H5\V1U0(LJ5[9M"3)L:J!3X@\FZQ8P#8 MQ!P."+>RPB91H_K$ %H#JS!N$&4%E,IJ.5^L=8R.%/>T3ZX6W!-03C/J#$^: M!CL;= =(E8Y($P- )(AFQ\$: >?6"K%"EQZ<^I.HI5J2 R7;&!KT2!=8E&N: MVTJ5@;T@ZA>2(.5Z6YGHUM:0 +"D8=%*N3D)C3KR4PCCN.+)7=]!&J&C9DH+ M5_M^^.;Y/H4_[5,[QUGR/?OPP';?7P,Q!%_-]WL4@0LN7=,& ? MX\4O/I!*1VQ\"(FC&]ROPG?Q&O7G?(6/\ MF1@/?X/?O'F1,3ZS-'?%]\S27$W@821C_.\S_B/YO;&[^D>>Y?GF3AY@V>>( MTRP,@W\$W;^VD>D'^(NG6GCJ;EFN$OIFZ.L51-S3VA M;^^E-[TUW=]5Q1L6@DP+3JL%%TR-_%,M:1XI&IZI2:8F[ZH)_'MJ\DNQ +\A METTJ_E/-B5+0SJHI[T61OS7CC\]O9PN27Q-SSD3BITA 5+J,Y^^(Q,L9GNJ& MW"7L8D=;:99_UEI)[R 0Y\I0/-7PWPODTY:86/0=*7I.=$R]2QKNVL\RB&$= MZM:(T;3'E+DY-@Z6'-\O_TG-MEB^2HX]CW)=HCGT=6]:\-V0Z9K#K/>W.FC7 MU<+_J\>KB,"4.&@6=!@0>'B6KY8-C+)D6D1%^.$'@2*/,/JQC.+3W> Z\3YT MXU>X,@6^706&J&<*'/Z ,ML5M(2*IL$N9:TW5ANCRHR[L@*[77XQTOHS#9PW M:+$7<)6-SD79(MC##QR''C'L8_?H3W@K\:(AUQEO75W"2RC8KA>E*SJ_]A9^ MQZ;PJ%T3L.S8KIM;./98/UX(,#T! MR/E+1-QY%')F+R 6M78L:4>,2JDVH\9-PYLS,-QKC5D#X3K*1,2C;1\E'DGH MLB4=TN$.9,KY993SS [ V\KI%AF::Y)3SI"08B\84K5QU.0)CW9\#'Y$\4O7 M6TF5)W#MR)_7XHHZC[F)9FF.9,855B1UKENZZSEQ E1.6R^BR\,GZ?B411WW M8G3.[!'L!;.\$\LP\*!?""6SD\EC%:!DUM+,J5$4<'6##^8=QX"-Z.I8Y"R@ MCPAYE@ D'3Y!IJQ?5%G/["'\MK*V6PJ@2@$$,W43 N4>V<][L;*&S@,*/U+G M*82=,A\A'6@!N]"BU8Z;!T2-(S+$X&L')6?V#Y[$[6>;DB/VI5]AT$!9=Q!C M,U(+0K]1K2W'M$A&S@#RB,)P!AQD.OIU=?3,;L''=!3N0 707$[& N\ZL%@N MVM-1,ZK@$/H U",&4QE^<+OX0=PVZK#C_[5'"O[]_53!QVVNP]DN#9ZC]>#E M9YF.;2X3QR\BCBFSZ.F(]DJVHX6CR&EK92I9$RTWD71KWY\W"Q^F'4]4G94G8G]E+A&P/A8$$QG->-6: M1*6]PH@00B[;L#(=&V6FNM?=,4_>._JR0>#G]%7_51MIO>1P@H((LE#OH[I3 M;@_;?8Z.%#<,$R$R6=;ZS-M0JGR*FW(=CH>,CSE+\U+AIY_X3"KS WX37(K$ MJ&5;]DN0Z==G3:A%\ZM:L8H:>'NMM4UE@;5;=%2J,]KZ/X8$W^4&GVE8MEU_ M7*U^N4./%Q"&:ZNEP_CY9A6B*[,-LH[U*]RA$2*9!G9TA[[OC3@=P?VAOUIV MDGNC9N:N-O*JM0IE+6H^LC,U+>U8FFF@XTXSX*06HW4'HVG>DXJN$E?/#G=O MF/Q8GD@6N&IF:GX(,J.@;\?FE88P6MC?=A*-\,^N0D4M'( 4"S<]RT M1.A/^_\^.,\2OV\[E_0"4@>:+8D>NP !SH7)V&?[PX9#Q2TQ MX"A-!#H2P)\BODC'3I_IXE?2Q;-O]N_I(@-KM5'#Z&_ M M?W$1+(LV[AMW/+L'<$@1/92BTBT_9-D^A]2V]L>$.[IN)(;,VG.DT/+KEN1L MJIXV=UNV%/K* =#]A9HN6PC_9FWG@[!PD!QF0I@=8%NW#X+CDP9C">! MA;,>+*;#W\AT/4,63N5LG%/M7VN[379'6S1?18V""O"H G VP'&1MD<(Q2/Q MP>MF&49QE5SSO&9I42F:OY[$1@XDL#R%3TZNKZ3V@&+_2S41F MH2S 121HAC]D M.IQ.';XKH.*%.B=2BY&V,NYI=@!N>HIC;?CJ0G)C+0Y=B*B,S67O%:7,N;@V MKG"/*=399>+L;GLFCG'#"!".TJK&6Q:V8=,NN0SH#W%-:! 4%D6+5':P& \FN- /,# MG*8CZQ#5=B.3-P*R2_M96'Q?<_H:<4@ZMMY,'+^(.*;,TM]F6/SNZ6HB2FX[ M^MQV](M'Q4CHZ:FV'XWB(H[O!=H97WR"7R?2?>LXMEDKXDMLV^@);%&L"LAR M,&(H6H3!PW%L,CTK"VDSU4ZM:M_5$>UK+4_<3Q_UP![?\5FAX$Z7E292'FXT M+E+NJ(3<(X5^+/S<#2U<_H:_G\ZMLU,'+^(.*;,TM]F.!H^HZBO]' V MJIM;:$[H:,SGH8OB3B7G B7*,K?T9MW2G5C$3FDL#*[(P5" *%-H*P"KF;Q5 M>7D-0=R)(]!JJ_0)Y[002ROOV8KQ),9MS>&C 1:6)CE6^-9=-!M[,-__^5O.+KRE]L+;;4T_'3M+)MF99&?A MR.6R>/*2JRMGJI)T$^A(ZD&0#Z3;7 GQA#^!>S![Y^: =<1RETR]^8EXX&B9 M[4Y6_XNZZ7N:FAV8WM7!R7WZ#'M9?:/FKU-@Z4 M1_H@/AIM[>:6IF;5(-+TS[@@&021G8BF=DXIA?WN<@_-Q/&+B&/*+/UM1J'O MG8CVXY_"L%0*ARE-M!?)O6[.]CTWNGL4C2@[(LT.DK)P+9/L3++O:->Z*8CT MM$>D9UV#$W>@N%DDX^GF\1['0&T7PO"2Z8' TEJWM 4*3ZA30Y>?NGQ\\&#H MG0/3\N>RYK#C&-1PV9_^R\L3EI^7DVE%&^HK(.@R4A\U0'3$SC$I$&$J C)1 M\A$CDU!F%FQE>G?S>G?F2_]_JG?->F/!\O4%R4CS'F\"I2T_16*]BWK9@H\$ M 69GFS<:55[M;/-*MB6UOO$7V>SW\I>P/4?,CM\3?,91/1?DN88]!MQ2M8'3 M(@)^]5B:_C.7Q"B6=%:LMA= D1YMVM,,ZW)[Z Q$H<^0[0(W1A M);YYI^+ON%3@U0;RQRJA:%&MXY<#X34M1RN*/0]?LXF: [1L+WR>9^<*MJ5& MK0?5Z+NX$K44>2@.#_1;-X]N@7SP,4 MS33?='4/3SBQA,'H,R=WQVITIU(Q*YY]_9__]WST28.R3U5YQK$])^#83$PT M0'8TR0"D;2 M&GC&IKU1 DQM['W?_=7AHWC+.7QFNWID,;\[FAGN"BOMU0KMU]BS%]]AZ!O^ M:GWQQ.*>)-A ?BY$*,!3)]JU_K=K*Z]4X%.OV/T8_6%HS<.]R_S/\P.R_4?/ M1"3B6_C^;EQUU1Y'QL7;V9"]Z?2J!8;/%=A.F^W0W2K;>CI.O?RX"FRKR+1XIAB.I\6SC6HQ9%LQ]Y-[ M.;:4B_C782HA7;7'Y/YJL#S_[]R.H5<<^E]5*]>=VKX;^H;NOZ\Y$,&2?#7T M!]4_'<6I-G1"(10-D4A117!21%%$%DE(&XL2+N,HB$FP2H%[59 .CG2'G1IR MK5XWA.5\JM?50JW"K[DH#'A-N< +_:X0(#-&)UJ(QRD 5PDX$4Y2.I,\,$3X M2LDH3Q8UB\EW;+K$A>%$@K+'SF<$9&$U ="L5;< .+,:%E&BKRF1S2!T2"H; M5/!UMS]!1QMQ'@0B*B9FI& #L4?/=4?0IV0)0^RQUQW2(67B[85\H:2C)7YM M\&68"*SXE4DK):84A]8B]AHV^LA^:FKY=( MG@XI$US:S"5J-9J6.L9\)&%=3LMO9EI$>>#2K@CYP?_9I>R&.Y\I+5SM^^&; MYS*//\G\SA.1?,\^?+#S0^)/7G@KSV*J/0WXY&=0\#=S[;I9\^WPV>.33LX:.CA9R *#[_O?+L@Y,J[;M7>9XY??""5Y#!Z"8/B M$WM4)]EQ7WC"YSPUROA^)KZ_!V1EC#\3X]_#?#/&9Y;FKOB>69JK"3R<2?P? M,/XC)_*QMWKU)._C);NV4:/H/UIKN^ M90M'FVJ6JZ^TEQO]8\X*]WY[G/.D]?=47(3+JHYD17 R<;Q[<4R9H;_-T.[U M=<62[81QJY53?,?1+&63\QS) MGQMW'6S&+D_AN_'O1M*_FR-MJ=V?ND _J4)+\]AQ5UJ_%;BJ M>M\"L;DU,GBZ-FM1J#K9K@(Q+@@+A8%KLLE[%KAFYN1+F).["I//9EE>&Q3& M:"Q'?:E78W0>[0Y@I1Q,:$Z,Z\XBQ,7+SJ;)#[MVP%WX=:B=A3,W$\ZDW,4Y M8H,.UB3\R?0C]K5M)[8WGN?HLA_?5>C:+=N*1NW8IAF25*-3/,WUWO)M-+H\ M5'BE#0FXH"G FIOVJ@PG$I%O@SVB!)3UR,F4-W,H;D6/7ZMO?]K*U^ R8,% M0K0;5=)LNR0=JF_D23PBT+DJ3=VLI*<6NFEHKAMC]3MG(B<]$XBH](/U0B1" MJIU,N)=NNY,%7S<3?*7?T0FMX<\0ZS=-(%17BRW.LE6F;FRKM9%NKVF5%LDX MK2!#9C+CD!F'='I/IS .JUE]1=5;W:&Q,;2-6.I(?;(4&8?0/Z)(ZK+F(65^ MTPU#+0GOJ.WH<]O1CQYLW4D+LM1W&DN_N_)&//<6QM+NS\6F*GE]0:,IH^. M$V+D3T3J@+%\,/'Q+IV13#EO0SF_"NYR1#UU9=%J%XIZA]'RF+MMEZH^VHT* MP<0)D B''L]ITSVM],IQ0 M[0[WO\[J?'ZJSB??90OU"MLH,AT^6AZ(^$]NQ\];*?/YF&/6BA::LK@T?"[\ M*-?6G/U/]#S<.+P[*07ZWB@2RO8;-_5O0NFS062#R ;QSI:(*"@A(0@HJCBH MB2B.D:(<_B-B(*(0"(00E$*^V!+#*+TUPB<-"%FX(,MNP590&W+$FH[P!.0U M:=^CAKS=F.4-N*(VISU G(_&@0B+Q&M* 1V2I>FPW#5@9S488:M&;4324>W? MQ$,+$MPV1_BF VH55G7E7J->;DPB4OPUJ54Q; GK"AVFGL=KPP H]?Q1]'Z( M>DTZ*7 C&IS0:W SP;HE<> 6UXM 1")H\-7\.X8RVUIX'YRK^2:GFW(+#-^/ M)">U\2AKB(&;!:C)*&LVYYM-K1.7*4Y4RZT!(VK)-L NZ-=FXR[KU+LR%+T^ M.?]65<^OT(9I@&599]U"H/"-FTY^T@!4+4+MKJHFBQGA] MRH)(A='!>M><+Y!1T6.(J%!R@E.,7^JQ X4L&WU@VA%)OD&8RB0JJ9RL0+RH MH55Q.<\S6G?5FI<9=-0=QZ2)D5:F*P^HBB6?F?LM3U;L8KZ[B0LU)YCJ"DB7 M#E:N9, 3;NYX@S)36D632C)U64'F6J]>1$%^"M:Z>69LJ>7XJ0FF*HH%!AT$ M\@6V)%>! G-5F9Z$E FFNC *SNNS58-9 M-CW*8#L3L@]%E:(33-5G2 'EVOE:R'ZP0&R;D-5I1)1)IIJ6OX#K$,X;A6&^ M7-H87I]F8]($IYH^D6_2'0T2YM72:EFJ#-T514>D"4XIV'1D+_-N"RQT5=?H M(JRRZ,=/37"JQ!9@HL%Q&-36W&[))0CDJXO)!E&K M;LA^/"FHJ#J U@Z[0@78WW MT3,3QJ_F-_T9U"9;3+EA$;9&S^H=(AHGE%BH/(Y8BXGGE4"VM^8)BQ"(#GZT M_'9S&D887B>0#=]>*2Q>&\C+[F27^OF2;#1FULU ?+(8%/;+%5FNRR MS%Y2PMRP01F-CF+@;9QMS8N;/$1&E(DI8:#N5H51B1=\&IPB+E5%H5I$"24J M=8^59L\HMPMED%U!(%1J-F:+>93D!B6$;[L*]<];CSB&=;P6"\-TH54_6E+< M*UKP3*4\4E$FIA4@/-R MOH9*/0'O^AL3$1BB.SM:_7R\GHN ,S)E8;Z:U?B^/PLLG=Z=-+VDE*4%U>- M&Q-TEE_(34<6.V2P [U?&1Z@L9CX=:EA%%2:U+!.O6!VHKGK JUJ7-XH16=B8[4M(>B:CDD3T\?SU28RZLU884D7 M[2)JPI1F<*$Y2$?A"1)CBP':G><#4I^P8_%;F6SUD&6:$CTN2\ML66C];'7$M8%CI\>:PR MHYXYB6D3$ZO(XI#U\WT'7*HBSX;>5-&DXR' R?VG;K7EP@"L@, &M'@8!%%] M'CX7.E* ?S4KV>TM;#$;$'"WY3Q9RX]CTL3,[&5UW:PM-G,#J,/3%0M;6A6C M(]+DXOI\DPP8M+@6"DNSM>D 91FVN)@VP85^N5#LSX8Z _+4JMH#VC;$UN(A M)+G *4H;[C##LL&WJ8$Z7:+D8AJ. 4[.#*NZO+KN6X8AH9T^)J^#]3(?DR:6 MUZDRW3;&+7!#8_,=P&"[U;&V?5]8&AC4+1C;QDB-21,CF$(!W(46 MBLSHA9F$ DX1LCPN(DT,H"\ZW66KW;% K3285(N8PO.S^*G)75LO%8QBVQ@" M!DL'MM^8\#(RF\2TB6T;[X$CE0<&'0'H*%I=7['R.MR-H&-NHSIHS<2A/ZZ" M,#H9]T)/OR2T=V,X;-R_U9+AP_T6#A#UG[5;@,EO8%8$_;/'2:>I"8UG?2ZN MPGCP&X1GG,]$_BLQ'LP8?PW&HUDSH\S4?"W&9UR_ M?Q;WC68"2S,U^)\1G7 MK\!U(K,S6V M\_WE^/'>6?V78T@F()\ZV?YJ_'COP/FK\2/3ET\$"ZN=@QQE;@A-O DP7;_E-*XH_]\VH3-*9.W]G%O039QI?C1WO M'35\-7Z\=P+P]?CQ-C#_U?CQ'E[^U?CQ#HQ]\^SX4QSYBJ#QDQN2\"Z^6L!V MFYPX#U#\Z4I0M\F<3$RN"1??)"?. Q1G^G)]*3E75']R .B/@_KP]=%9NF3> M7TQ_FWJ1L>%\2.B]F,[+1R@W;SEO#P^-FT=G5O,*>RA%W90@M&SKW&)P>83O MYL6 ^H;=E!1T;>_,3M2ID2LR(05OS>]0O?[Y!#,L*C/X1S0=/?'63T2J?L%. MBW]J"@KV?&Y;.X7A/5LQ,B\AB[3;DJX"^MD]A4P4CER#Q6_+5>AHGJ1;9T^C MR*+(%$21+SK79<8ABR:CKE+[-L=95/GEH\K8?9R&WVN.NV]IE,6868QY2]O M[RQQ\NMY;=TNLR%%(63<$?>/LZ*K[W3KO[G_/===L?Q/TE/Z^$'>#%! MV:,+*9*4ANUF3L;YX844240UHM?4B855,H.M)BE'X:J&?"0F.G_ M*HJFA=O.U;&'MR:7ETS)4K3'7%%3M+FL.;O9(M#C[AL8A*@/K^T[,[XB^'Q8 MPS-.XNP7)-[Q>G+_Z.MP2%;)D90H:S?G6[K7T<;_?1#";T3>DRQ5=G)QJ[D50MQ?0CEK=M)^( [7F.+OMQZ[^NW;(M MY>>1V,$]?;($R),EP/B62HG3[MPH0Y)OSD!'732BAL'8PP\L,P#GFVV:M?\\ MY8M2J_T_KP-%Z4I5:P\O[BV!1RF;H#RH!(*/&PI-3!N@KM&W9PGJ@RT(KX16 MF^E+DX8VM%&R)$<^ ?GP@R)"?P#,S$%F#JYR+2E=YN"0J'8 E/=VP-A(8[96 MEWRFSX'82C%&VP%Q@QZ!@HS&,W6.%D -LT=,J]XOYT=!: >B7M=8&/_"%'1A M2W#1G+QK!P9OMWVY=5OP7O>4+V8+GI7_BF^^O4A<#!76GFM[\U#I![I;&2_S M@E9KJXT!@BZT/'=[YF%::P5+7ACY0F&$RR6Z.$7,5FP>T(<[;E+ M-)T[:#@#H)M:RW!)/>6B M[TC1#=WK3WX?;VXX] MUKTH\S=TH$,^A7]^Q)-&_3X"C^4-:0##+59=+X7!% I$/,;.D4<"(1)^]+]/ MHI(WZR^?K?]Y*B=U=70\VP:N#+&>TJ.X*SCUI'O"F^!JM\S758N=U(PZV4?J M6!N8-,K!:7:&UQL"V&X0%:G;X8WR>$:NT-'0JC.3:$,@P@WA0Z#*76*@MP=U MGM!#NS"L>04/#=:A;HT837M,F9MCXV#)\?WR[R.;'W.N0#&OU5%3[8.:,2XJ M&W6Q$=N1+D4P9>1I,]_U(AOO/N8LS)[BAV=XR+)O)[RWF MO][05&\9"LZ$-Q/>VX*?KR*\-^OPIS+?^(9F>W'\]>9/3SZ>H(S7-5)T\ $& M%K@UY@)$MV72OY^@_*NW12C /CPL[*/#;A0<[GA'6VKW9ZA(/T6*+SE&YKLU<'YR_AX M*0":4Y1L>T.SS3#L%.QGHD!;HRI1,D&]RP,EO*5+M$&'^UF$AU]A/TL74'Y3 M>'A4J"6J-A1!W;LR-#G/SFGSA6EOM/"'4/)SJNYHBF<[;G9X?ZNP]ND+#9W4 MUT]6*9DT [+)KBG6J+O;6M /QH"YX?Z@[%#T[%W5H7#DT<4$S=%M=5>-*/Z: MEUQ-C<87VLAX9D>J$U&]+2=/&UP!+-FC;,_J8AI#?+WS3=*B>YNLD9FA=,@RFQ7"K-/RQ[D=QA M>I+I:^]L,#\]YPD$;3F$;.,,C%&UAES:!#;!A1L,&3G.$)%,),E4_:NH^BV? M<-SC0<9=GE?<^K%$YM#<'W9]1Q#U72+1=PDXWSJN?%T_^L00\TE\WY[LC%"? M]FL,D"=[;:J#EI=,$($KX!F=WW1AP^E(HJ;G4=6/[2YIVA[G.IKK.;KB:6HN MEI1<)--'T>+L!#M+F\Z6-#7P:)8VG/-Q M=_2GAQ([*+%_TM'"B;GAHO.:L](5;>?3=C3%GECZ+WQ8E5=+,USQ%:$\"6Q] M#I/].3H1J0B_12DJJT&:&9PLU?UN$.(LU3T5J>Z9LY=E4&<9U/>'6V<9U*G( MH+XKI/OZ(<98(>LK":B.P;X$#OOB8$.;12X,,2*8_-(Q1KK0\YL"R8OZ2@]G MH.8B&5B%BVQY.UP\)RF*XVMJ#O@$<'Z7_LD]P>#9 J4%U+XC[#H3NE0 0QG@ MG#+ >>'H\^^'#9QYVK_CW3E.>CCBM_'5^6@S\19MPS (0(GQ5:0R&1:*6QB-M3@JI'V>.H^I MP,+O$O*^(V0[VSM2@E/?$1Q]EZCS78++:<.03R=TZ4(PTY'_V]$6OJ-,)7=7 M-B)"+E-^V/KK&NSIS>']3!APYX4A?@KLD>H01^I T*AEVQ0U*S%U;"09LT6; MGT=1 !05@D!QZ)%$DIWHLY)M:8@GE\F+PXMWSP6=?D: M$K_8C'Z%*].$+)+CZ:HG]'G<08OZ,AA7N6@O(A]^$(\(E6SFD^U$FJ\,L2?C>X-H4)0E?8J_/JB=?P"7G%#[?:E0HSI"V2(W@ M&IU\:[J#A\"K^.3I KEO"LL^) JXD0"9DJ.IN;_^];9$[_XDEN<];LK!4( H M4V@K *N9O%5Y>0U!G\--WQ?KS^&>SY#5IRF&4AU#GL7]3%\CGRW)<41EX%+; M>3#O&,M>F?1T00<*L^#A!_@-Q!-2G5MHSJYN]&D2(:X(]/\>GB_;CJHYP([Z M.[18YUS;U-7<_X+Q/S?J(MS>NEPK6?G2ZW<>8=Q!S9DLIE86[T40=_AR)HB9 M(%Z]%_J-">+-'X2<-RGWX)8^^:+/_-."Y$Z/1%GH<@PK3K52-J; M ](1N0;4:?!XKO8SO:X<5?1113 !O_ M%CI\'[*X XEO2!;3#R)_PJN9\4QK4F[Y,\/WE-ER $W+E2X=>341=GP^KR9= M$/%MYD%'SY!?/"/0(ED.AV&JX2_SDAGUTGO,-25'F>X4%H$>=]]$+%/ZI8%"0@.EVKYL:K>P6YX^JYIV179\PC3J:6-3)-$9OC6 FDN%+##\ MVC#X@S3J>"J[$O!'$J8')B NEU3=,7 )GZR6S5Y-7@P+=KS'%WV/2E_'83L*NE8@X$5ARN:8)$ M*HTE=WNVA,&V3L^NZ+*A(2-:7D+=0G-+1[:$?/A!08\H]+'*+)E!R0S*1XZ8 M,H/RV?,E7-RJ?$_3>DQ!:EBKAM<+B,T?WK YAR51J]BXR#>:$K@4K 7-BD8W M7XTM270:A<'H(XY=VCFY643G7)<>[MB:'#NLNJXU.00D4/?@'_RR[I3+1R8 MMCM&%6/X5JNP:*+M8E7?F1 6VR(8UNT&/9%):CEE4./15I*XGUNH!BH_$D-BE$9%+ M(S4LLOM$I[U/=,_"+?HDB#A'0HM]<#RHMDC]*8(L@$=Y:XAKTFMZG VK=6A/@/[^;)? MZA5D'*%%6"1>4S:V*CC"'2IO *VJ!O9GT-AP@Y R^=!>;8K;ZFIL@[X_J>K; MU@B>-;B(%']-BB@MP:C,EAU&&L)*'VQ,%PP:O1^B7I-VRW*]5@0Q"MS093@_ MM[G"LA:(<4[(2TIZ5K++E5Z[(&QJU67 =F<8T(@H$Y,J]M;M,@LV4*,O V9Y M0%&+]8P+*2'P-:G0+7?;36+C"GBA'0A"WT8*^"0B3$%*BKRGK$"YV<(&K&9O2J-!K$@5C M$' A98)3PJB[]HM I2/HDKMHK)5YO[6(*).8,Q_D-:&O]^*D) MIH[E2NAO-]D66&@7NEU_W.UX=OQ4\C6ISIH%$BP8>8-'>DT)7O>V/3$F3?#? M=PLL1XV$.0/T+71+""-&H3D1$Q,,&'<+@52@-$;050.IEC&6ZF\G(66"_QK9 MU%16&//&1C3;PZK0'*)K.J1,\%\9Z_,6B)@V",C+1C5OHH -1)1)_@]ULT]6 MN6W+D*83V>RVIX3K!!%I@JEB(<^-]& U#M>?9 *%+S"Z'NB NX L8C >0X)2W*%,]3ZT%QJ;J=VEOXW"D%HAXDE-<&^HM1B52,>9V MSW"VK8$)<71(F9"4Y3:/>,TJ)@F%9=/AU TVM_F($GM-2:X&-<"I%QR!AA)108J$:#6U=H?Q-P/A3$$#[ M[*R!]"; P80N=(3!AQRLNI$Q,J6&"1K=$;]<@SC1X,K]> M]@<=.J1,3(DMC==B;0D701CQ5; -Z7@/#T+*Q)0V]:*\#8W.7- Z54)AN,F MKD;/A!*[A#$1P*I5K>:9PJ@R =T&-9;M:$I00O@JDQG1K! B-;-?"@LY[P0"G<""/*Q)(. MPVE!0L^J&H4F"HS42EUJ-:-N>XGI(ZZ!&R;30!G?5 45AZM ?AA1)J<_)\4R M)VL].ISWDB7:2)[:AJI/'9G^F!9DHSOLY8T^BX!P RJ:=BK"!,P&D++ M#9@?D\MPGXIH$Q,;<^Q:\'O@P"C7B<%BW48[)3N>&)R861N:L$)_/?>-HBS29#62_B,Z,);02B$8NJ9@$ ,2]R^B.]+4G2""8TIW"R'5I6F M#1SL]X'2)")-, $N4$6,ARH "'<;"Z"9A[IM*-B78WQ).NFJ[&8- JX!T]W0 MQ2! P9S'3TV*#%<+:HB@([3 ,@R5OS4! _6*[M.B+4&SM0'7K/F".B:+0;Q M)*L3GG63"A4JWYE2)J6@L4X>&($,[6!3@31:3'^$G=$I]2$QOWXJ8D! MT.PXD&U]*!OX=+F0YZQ2#^C=@5UB!$IC.B/;4)XQ? _,DVU)11K!CC;IWP-\ MF6L5-F5A#K/ATG;*RE+8H?:)'3X_&8!JMX%5C+XI;R;"&ESJU1WM88N/D:PG M_&X'UBJV:4H+5_M^^.9Y8(3_Q., 4QM[SP$Z($9!V_^$ JR:YM^I[V:J(W$6C^'8[]Z>M9KXUFC#\7 MX]_K!I!Q/A/Y>V/\VS7],\:?B?'O]2'(&)^9FCMC?,;U*W#]O4+S&>,S.W-G MC,^XGMF9K\/X=RZ<9'P_&]_?;OB1,?Y,C'^O]TC&^/-Y-&^FBF>,/QOCWVR" MD?']3'Q_KY],QO@S,1[\EO'].H;F[78[&>//%CV]W2(H8_S9+$T6/?T!WS]2 M)%+R/?NS=Y'>33XX"SL.CRF$@Y0=_<6??X9+[]S/^AV&7/KB]\WSX[VC^B_' MD$Q +MVL/E7\.$_?^_3R(].7R[;43A4SSM.=.[W\R)0E4Y9,66ZS MPYV!%. M/OKPOP_PPZF]=N*T_9S)Q8OB(XH65=SX1'. 9\7+/MP&X#JV'&>SO7IY<<[!P!?C1WOX?(W6J3K][R)MY'PK[;T%Z[*=')V_"E"?$4X M^,G!2/@-7RT4NTU.G <"?L^;3 ES,C&Y)A!\DYPX#P21<\3KY#<=N M*UQ_ZG]R[F@]Q=*0;J3S)MEP'HSS7DSGY2.4F[>HP/#GYJ"75/:G<+$_0ZRV"J+M*/^ MHH!^7D\A$X54B,*A1^2992&+(E,01;YH[I=%DUDT6;"?NAUE4>67CRJ?M\N* MV $1_\EBS"S&O"4?\7>6./GUO%O?+K,A12$D/Y4^$7"J M9(*>AS/V,IDX>ZB8(IDH2 O]W+AS)A0I$PI&?>/D[O*7Z\Z^W/^>]; MM([C?Y*>UL,/\&*"LD<74B0I#=L]NY-Q6M A9;9C!R^D2"(.'993A3U\9-+/ MH[.7-B,V$1>&&%(D$;LNW1GJ\-FVX)<#'MZ:7%XR)4O1'G-%3='FLN;L9HM MC[MO8! B/[RVO]D(_1+'4I]=X#/,\NS7)][QB7+_O&QNG_,MW>MHX_\^".$W M(N])EBHYJNC&V(*(VBZ$X273 X&EM6YI"Q2>4-Q#:/>LZ)WQ']*NR(ZCUF0( M)$:2(OHN,)&D1?0P3YN'IF1G':)3#-L*?W3IM>X^4>T.PF,,LQD+GXC-R_T6 M.Q0L!G"G&['+M]#M55ZR(UM9RYY_WW0U]YWRY^KMK,A9TCQDX?X-WWF4XP]7#WY[MV2^+_.N?-Q; H.8DJ*I-Q&&+ZI3%QV4T&J!NSU+ MP#""U0K:+4%8HMT&0]2;JV(G:AA./OR 4/011#.'(+,'F3UXWQX<\M@.>//> M$ R5=;&T]0:.@&LM9]DI%)8K9')[AJ"S:G7J>L5O&VQ=G+:[Q24W:W*A(8CZ M5J,X] @2E_8,+IJR=^W(X.UV+[=N"][KFG)R6Q#I_U^W90">%?N*;\.]2&8, MM=2>:WN;T%D1M:4%KK="74$F*[@75 (KN+Y-"!D=OOJ(<5CBR&;"KDH-<.XQ MI2$-;,?P,C8.Z,,/"DRZ"/\^LX]PT=S-:YN&'>(#8?"K&DL-\7 A4.)Y,)_T5#RZ$I4],Q7IUV:@O(M6&P8@^#X@2W-R^FQ(YH[MF2W!]4;0U9/)DKWAJ*>U,"_ MB:F*_V,>1")8L02OB10O#SJ-G-^E*IN9WQ&HXLV8X6 MCB*G^(ZC6:[7F3[W<>YSSI'66>W8_-S3><$^S M);W1^P4W--M;AF$S^;W%=-@;FNK5$;M,>#/AS80WY>!IBM*/;VBV5\=E;QE, M^W@6,ZKWZASAJC#CU\!E8$PL!1S^?DK3K]X6P0#[2+&P#Q2[49RXXQUMJ=V? M42/]%#2V-(\==Z7U$0"AY"_4MM-"5&$IX4U=JDS&(ST0B3B9&2'02]]W2@&P MGIYW)>I8QG5:H/I.E+-'U5IW24U:D0=J&0[+N9&;T M5_6E5R-6-NC\86VJY(;0DTQ?>V<_^.F\SB;-"39>=SL"/]LNM["W$:IK+MP/ MR"B5 \>A;#?(-/B&MX*;C7:R_.JTB5(:8.";0WOO)[_Z=**4)03?HH!E:.J? MH*DG<389GERV)NT!*?A MTJL &B!L#'X )[1VTP7))J.Q&%Z'M6XV.X2A>UQ MKJ.YGJ,KGJ;F8DG)13)]%"3-4INR5.%L2;-4X4Q^4[ZB7VBJ5T=,,LQS[X;^ M/)!WN_8OWGS<'?WIH<0.2NR?=+1P8FZXZ+SFK'1%V_FT'4VQ)Y;^"Q^VP'&6-IRE#=\;1ITE$V?)Q)>&OZ\?=[@C,FAW" LV-*3M= =B9TJ4"+T@8*?7D4>N'H\^^'#9QYVK_CW3G.A#CBM\%#LFBO +D* M:CVNPX@]$Q<43H3 N+\CG*779OI\*7W^SQDZMJ6H3O1'M%?_5?\U;=R!F@A6 MJ@C:U@>X[I(6NERLQG$!Z:0>'^V_=H\0^5TBX7<$>-\EKGV/\/4=H=1?!XR^ M2\PY;=#R*27Q9G?#/A_1+">[,^?I9XFB6>W@= ER6>IB'Q].9/A"[96*ZI M6[83#N7PEJ*F.)KD:B7'GC_',-RN?7Q8%=M4->=8QZP W +SHF Y3-U<+KI\ M#VQ/IH$(07%?.NQCAT602:7V4LWMQK;]9KS:OR\AJ"/E>1]GW)_UQ%V6C!U2_FY![?TR1=]YI\6)'=Z),):#IS&8K,T,<:O6]4^.=E6JR M M0G"QY8:,XD\F+A[W-D\F'3!P;>9 MZ!P]0W[QC$"+9#DOK>=+0KLN,3-J.C-<0<<55O#=9A8+XJ58RE M"4W^H!E=/)5=/?@C7>;8 %UMAGB99>:4[S'"NH"Z2TZ$D*C-' 8^DBC\2($? MN_R<(F6XH9/@8]#U!93F!3O^=?X<\3NP"A]U82YO$C[?(&*Z.PO?C:1J*:8? M<;P=]0JP+=K;':9+X?K\ZC#]6(>R/LIJPKJR8O3:P%L"@NY:?!#9$NS8(7IF M0DZ8]GS']N,8^IO9C]^LKR+YHVJQIVD2LVF-:0MJC$Q8_L/.AN>P);5Y'M]R M^;DJ%*@Z@S>8#;ZHQ7Y)5(P%)1YAD,PL2F91,HMR?HORB\.D7HUWV0G1;( : MO@1:HU7)FF,W:$J:>;])#;O"P/ - 5$LR&V,-I/(E$1'3RA&/5(8=6%;>^&9*JK#?5G(C,T:::Y>HK+=1S>Z[M MK4K?*G;;++.BP(W<"B9 7W.'K3_LAG<*J_++>E.^P^37,ZE6!)]='3'MN78F63FJ?S>)20<=MI,7:NK#. 3Z$C9 M]NNSXN\GOYS-7UFWL;KO$DL G)<)<@9KFQY9W!D4(CIH(M!+EQ!/[6'Q:>\F MW;&=.7:T_*7L3'[FUKJ.7VT)0(/E-Y49"8[7-^!VO#8.U2EF]:?5+2=(-F68 M!HGZB!8;A^@4&H? 1X2\+-1ZZ^?3?\T7.ADA]NB M9&VB8ETMVPN?Y]FY@FV%0W$U-?HN3A6)O/!<2;TM;I_,+QW[/F. M,/SE67ETCX.08LT744Q%T#&HB;(J0R)*CE%1HA!/K/=&.[_[FAA M>!U&TZ]6:+_&GKWX#H>QX:OUQ1.+>Y(KF.I$.^[_=FWE+5?OO5?L M?HS^,-Q_PFW8_,_S1)[]1\]$).);^/YN))E1,<-"M/O'1FZO7-++P1PD ,,1 M!7J6+_-L3WE#L5XOWK%5N0E[M<#PN0+;:;,= MNEME6T^)53L[5Z#Y2JG!]GD11Q$41ONK'MT7V144@"J H9,=(-!!I,HF?4U)3W*-Y7>REP+A4(#Z$G@O%H4 Q%. M4@)MOSST5H, [ _+ZV'5ASQ^.Q&1)&4-$:L+=)PWF+Z*8"5<*L],*:+$7E.J M_F@P1(V%"P(NV@"&G;(+.1,1%<'7E+ZBNU-%Y!H&Z[#P=(36BIK+B5B2TB1% M&'>$1M_ *6*@#)29H)3HD#(QSDW>HN>4XZ^8Y8) 6P6SN]#LZ)F)<19I.1^H MI<;*T&5P@N9KBH_YM(@GWVY4MD*)QT>&)\9%Y@K39G#2 Y:2!,_IXS5-, M@Z_(T0".+#XTJ4(X7Y\ZX(9IN:5*4:O.H@$<6_UE5Z5Y#+-!MK J%2HB2PE2 M2'IDJ;KFC(,VPP%D2);+N++4T<-T Z#**3 MI+*,@.,F:RA@@9][O# K65YY(L)'5@N2UKI"]R17 %0:!Z;335-G0HT^LEK+ M;D=:U@O2'.P+@YK"K66G7@\'<&2UR%ECSN97/&%( E-6JK-^I5D(GWIDM6H, M:\E%Q&L:$F6)$F=WMG@H7O"1U1IT2WX58%=]HPQ0Y2K4:H&;?DAZ9+5 GUSA MT&149> 5 ;A\SUGUF)#TR&HY;6PN3^>UP.C#6\'D^L&\/@_'>F2U)C-[O5K@ M0QVLE\G2S&<*T%RC(U+D-:F@U 5DI'8T <[+!=TH<_/M(ER"(PM+=$<.A @3 M2<#M(C70%X(A5.F(-/'40"&HE=C>NLRRX7M;@VAM*A@G(D=DH+AH!;31Q01# M7_=]@IC..P <1.A1@E17\WE"<'((>D1<0FU::S+SK)A\-34*G"0#M'3 MD/2(N,#0D$?Z[7G)6!8,K-/ !X8;A!PX(@,6/R.K_%BH@/WQ8H(,2_ZF1G$B M>F1A*S.#WIIHD1!T>0V+BW[-GL Q:6++4EKB:ME9#"O"G%T,E,F(,0U[$I$> M]JPX"GX*+G=@:AA6F-+"U;X?OGGNR^!/_OTNS)-\SSY\L ORXD]>A(+/,+8] M#9@(XCSG,(I]H ?M_**/E>TAH&_$FYC>LQ#HV?/M\)ECTPX.CM7A9R ""[_O MXN8@9,J[(>L>CXA??""59-,/Q/CH6_( MF]E]&>//Q7CP_[/WILV)*UG^\/N)F.^@J)G^/_=&@%L2(*!N3T7(; :;?;/] M1B&D!&2$!%H0^-,_>3(E$(NW*B^ U1%]R\9)KF?YG25/7G#/%H*-=CZ2->>U M\9&L^:*-SUYD(UCS-10?R?@_V?C7W+,FAL(?H?J/6WLF"-^$_<'OE-'SW+I_ M5_4=]T[@=<.'__/WJ8%/7F3?]SY+Y@^C YVQA1!3Q7\8VTS!4)'*O/K6 M_>\0P4M"Z;)-]1K M.@J%\3G(\365N#Y#%T!]-08,>9L96N:4,6<(2KX9(P:RU1?DB>&?'YFQ_MFP M\*OOKCSO;CRSU;X43_B(R[9'M/Z(ML]WM2_YK\^Y#P%-??1M7YY-E3K%__":URGDKX? M]PJEYC0U].;-=K_T^P5F&I8YU)P;S 3/E7-0T*38Z=WHI6[)S.=16_0,*P,I MS ER]_JUY1PB7CH97OITM?K!5YL_MX+V%E?M,M/4,^-%-. \MCVY5F_CI=[# M;.)A9A*PF1[+)O;?H'L7LCLIG'"<=OHN@!#5!]=VR"UAN%1L(4QQBJ8CQMA% M%O!G^% !,]^%>\>:L;'QJ?,B,O0C8R@R]"/:CFC[.!#)<2W_Q!3X4>GI/)IA MW:P1 ,A@X,C(4Z@W\T@^B R5+Y,N[_I4\>?JO<\U5S[8"1#F#_RSCD@M)D,5 M0VQRP)"Y:B2X=E.4*NR\.FN)W6+IJC\926GP"G#96#K[NI)L$;.=%K-%KH$_ M>ESK]WBM,,N*>CI?;TV$G-Z^JXURE;L27.,'IP$72[-LY#4X$:\!*8,7'\C@ M!8#:9,BP*3)!2_CY8!0B,I".U$#ZG ?$(FSS^T4GX:FO2V"V7(C7#DA8T@FY#^1.,9I+9SZV%'['IR;%IA(K^!!6]FDM%X^%2N6QJ M>J$OZ;?M*ZTJJ54/Q"Q&TC=X;A^#O >+G1C6. U/3->P$)['(U(92-8 M/*+YKPPPF!818WOR+++S3LC..Z;51GZ;/X% &][<2.H\LK0%*6;R;+9JRM4; MB:[4NBVL&GDY->ESOI5: MQ;7&9.X.W-7T3KX:-T; XQB&<;'D)S\'=F+P[*A0&'G[DL$G%2?9L7B'IW9D ME)ZR=(V0TF^+*]:G&K1;W-^,FE->' M;)U8AM]W#45,^(V8,$(R?X)D7L>#*-7-W=IWE51W/C2'XTSR%$F,DY./VP=I8:\W=(H&XJ%9!OE$?VW M;+36/'&HVD#UNJPLD.P6)L*C5\=-2^H0'I5+$+L_$V.%:,JL4)#[MV52Y-1%1'>@ER09"S-\U$RR-$;]3[&@*>PX9!\DSZR MXP7@DHH)F5<*UXAKORW71ACHDYDVG:H+8CYK4F,"W)CDWP MF<_EV1-#2D<%B&A>AN):%C*>0T5G*49/25I&4.8+H SACAQE#B(-#QF(5U?6 M;0VI9:-;:LXN$U>B4$CS(XE+T4S43'+_6G'D>SD#%HMPQV=QV$I7)XVVEZBQ M6N$NO70JA6XZZP&'T>LXB8_Q;IX8KC@-#PP%'+IIC.(.LJ:1(^;T3+IC6FV4 M5?H!B =RW'9$\I,Y^C978G/=K)L3J M)^'F.:O\!G&':EL MC,N^,MYTWA#C--P_ZP2]K,XT[H9CFQ*7\5-R$IE7QK,B%OZV+!SY:CX^.R?,S+L\?#.7>OK= MTN4F\_*@V)_5$Z/TE/ P"9BELI];'.G$D-11 :9Z\'X@HP,M/'$7.08/#T;& MY1&*U*,'/V?AQYE9VO20CSM@GAOXG;JX14.]V3#.-?W*S)6.;NJ8R M_\.2_YV(7>E#GL]>S#>#1#M)C:\4LYEVRG/X*EYY6O[9NKK"8)65S MTRDANK_U'3F6XITC8M@S#W(]R[N[++N<%ERK?[EPV=R$>WR8EWNK2@^?:R%^32'V;1AF0M-1>KEJFO#G?>ULU]<,^MS2,MD!]75L">4NNU$/VZD M:RFUG,%BFP>DE8HEA5>Z^2/FCYC_5&#;Z;NQWH?WRV/-N@T@64AJS<92Z0_V=]W8M#IN!"29>(]5WWKW\9'_3:L=);B M]9P\L"NS6Q%S6QLS6WWX%LD[*K8+U\NKXD.AE!#M4EZ\$TLW MGL23HL1"+,N^KEQ7Q+/GQ;-'%QPYJYR6/V/9@90=U)J"U2V4'J9B-=T66IF$ M""PK0!WQQ($R-Y$SZ=B<24\DM1R*E42V:137/FFX=?K^J"<"V^6 6U\7V"[T M<_<#-+]M3'A)G$Q36I]336SETA+(L20;W:V*F#]*:CDRL/8^O-^Y$P8M^W3$>[0R90]XG]S0RG[VO,_U/:*"/A\5QL5JGVO>,<-5BAV?9@C^N2 H=R_X3A[4!^5 M"NC>&>5[GJ1YTY'$DY*T23;&LE%-VF,UE/85IIRGQ MV6?T:U1!]4@-]^U42\VV7=E0B'+=U ]3T<[R3-NW@[T>H2IA7(VYTXY;A^+PDS!E),SZU'ZXGVC3U."P\9.S'M <32Y K>MET M5/[T+/DJ\L=\)%NQ^>:MJ*3O&H62:=<;*;/;2EZ-8&)P\S4=X]*1.^8,W#&* M.9V:L!FF,F%F?@D1U<^VD$-H1,-?,!QM@9B9+AN1 1@9@)';YF/=-CG"FFW@ MS /R&;5:[GT]+]ZQ?#^#,M/58[_$8OE,"Y&F7W?5+F+9;\NRD<_F_7TVSW/L M5;%?:SSTEP]=MS*RY\MT&O%I$3B6O!"889.1Q^9T/#:A:FMA#!49ED MS9R^PR;(J"J:UH8Y7I*(.:W='Z6N1BD65=+-2C=U9X^&GI1(D&=K8HGL*U\' MBQCLM!CLR[''^V5EG9@6/0UW15Z#&ZV&:C,S65.C')'(S*9=I9^\ MNZP92;8D*_.T$(_G;)&PJ?#C5R+&)J/W=4_&J4">#XS,FZ,MDO-EI1R^5]6< M3XRUA)P6A/F*0?&4UY7.\>RD.;_KF9W)O-)SERWN:NAVL/ E)4JY&)_93\&+ MW!?'R]_G6Z/T#(#1^W$MJMVMFNQ2$KLE;NYHXXX\U$?"HP[JPR:-\F!7?:_G79*UW?< MU.W6&T9FTJNG&M.Y!^Q/*LT+!W*3(Z_7<7B] M8NC/I"@+P77P( _Y 5[E66 2P* _LI]/N>K5T4?ZSBJMF/)9?5CPN:R%F:QN M@-2%_QD,7#6AHIW;FY*I02O?1UO99^N)J( M4B)-(H6I_3AAQ,+?B(6_/-7GI$'2YW#PX&H61Y=WVHAMQ^+HO_2.HVD*69V+Q5+"3; M*(_HO_AWW85M#\MW*O.?;%WE1UWAME59#FZ66IP?28D,05Q"+,/M MOXT8.;\B"1 E9_T1&#L> ;!@6P*GQ(M:MR_5YN+-^'JB62(( S8TND8>^#Z M9Y3V=3P.L-Q3,(V1'6: <$,#XI;FD''&B)D1THFLYA,,19Q\O/&#K6G1ENI# MB>/7(MN9%U/F34$I%;1,416*$AJDY2_"; <$K_#8U1]SA:'-EAKW,XG5&OE+ M&R.O+ D[\FR,S^PGD$2<>_Z<^]UBA3N,FY&Z92';&CB3F\)J%1>6[?Q8-INC MXV'$<>'N?8J+L<)^IGSDYCH:-]>SB GASU_$ M2I&M^UZ)'@DLUU33'>CH'Q0*YT?-+3KZ_*[>[4K-RY;%JZSL\\*4FJ4V<3L63Z<\NF1/Q_5OQ_ M"+A]'_;'%M?E@UWI6&ZYUHW?U-NKJX<,.UQ^D9/L /MGLK5'L<>/[[JNXTT7 M@KJZ?K@2@?W!U96(90]Z?+J)]E ?P*!2.#3%XD4[ _^:(R 8W\FV L>/@IP!/LO MV+)0UUO]Q16DZ\_"Z*"'=]Y!/AFZ.4&W,QW:BM!___N_PK/?9QA?%(9VS-\) MGK#!",4'%I(G<7F(A_\IZYZ\LOVU93#;9 (Q^W,M3A,PI^Q%DOL7L_D1]F#O MF*;R,A[:)I_IXCH:.C_IMX*/B#@-/C-M#23"3POI,M0NW3DA_XP=<_:3YRZ$ MG?,5]@[W76ZP)#8'\1^9&5L@E/^G8RH[_/:F(>BO\$4LK;"DUNDG'EV)_U&( M1&#?\/@=H$PPG7*@( B/^)PL;T\FH("4D%"XD-\D)(">8:S=PSMT*A\B-_XS MV.K5WXZ!J:OXCXU6N5IOE=M,N]#JE7.%-I.KMQKUEM@IUVO_^??@ ^79L_/* MU6OY0JU=R./YU-KUFW)>[.!?VAW\3[50Z[29>I')B>TKIGA3[[>9O^#P-,-% MZM]?..N_R@;3&9NNC>&(_:43Z1JRJV+M_>';L<>MX8E\I;I\=G_:W4;CAA"2 M>,/DR^T<1GW=5F&;JIARK5AO5=^#%?X84<@$"DI961@*G)*4E)2B2DF48*6, MRN'_#+C,4$FB(5)3/ZCDDM<5-WLH.>[,"X4"JBG9PD"=C+J%)L2*=UO*HVEN MWG16\4F=GS92#[=+K2(V)7Z_I9@8K"P]K<<+LIW5FLM)]6;[$-K7TN2Z,!U8Z7C)'7'=Q@BWW!^]=\\V M[JR'99?/H69+K#C]=-/#+?=&S]C\;?RFJF0G0IRK>0^SZ520,7#>'[WM%(U" M(U->3*:/V7+!X\PBDCTIM6Y) ,P:%U!3"6L$79[9Z&?P0_CA(4T\ MS% WO8!L@]_CT/5/"H(\O$TOX@\?7)*!@Z;R ,-8UT'O##T."BS:$/_QM59& M&#+^D5\\<9'BHXW_@HWG+[A$M/%?L/$<>Y%XUG$8[7PD:\YKXR-9\X6RYEDO M9;3S'[7S%]F(Y/]@XU^3DT!LA^<\J2_"^H];>R9PQOV&+^"EB,6+ZWY)T1WW MLO$BX%%5MI0Q=;$F MN%C@:QV\$Y6\)*)^:P=>O]Y#RXFX_O?6_;N(]U..>/^_>S2\9GG^]UC^22W, M7Z1.2@A (LZ[<'A$$4]3Q.] &>6C+9Y][ +OL48S1L(I"6@+!@K<)^:*Q8QYZDQYSD7F_K@V]&O8,[K MICV9B4MI(IA\<2'U.<=) 7,*E#D_.Y'SG>'/EUQ9/B:XHYA3Q#CR$MDQQD"D MOI^%ABX\XV4A!6D+]!Z7F$]#J!Z?[/R2ZGV?C';^.?DB,V7"11U@HHT@?;(. MQ%"M2+?7C=Y5%S7UW M!YE\17!6+'^9+0^408HSLIY$'M]*L_MU\][G*8F3PBVGY+^Y@9(\*B/;-G)L MQAPXLF:0AR4V=8H!Z1BX-W.&@"R-$:/#ESZTOMYI2-P3,B./:+611^B/X%(+ M%E$RI+: MON7,]$.A7RW6\TX_83LE\= ]*G>I%O6;9(% _=HZJO^'0O MGO<6$U<3IQ6+DX3!_>C0/2IME$R[I7NA/"E5/7VAF>6'5F=TZ!Y5JJMJ]52< M7W3=R^5C*+&P2I"^%S:S"?T@V"3Q,9QW*I()(-'R8;3BV%G+O@HUL% M$4F<.$E\^*V"DU0$KZES_1FZ(*_!:\B0,J05N'=SKF5A 2H::LTT%/K+ M@?!0I9_IRM?SA3[)/2Z%TF.%KR\E_U(!'\MD/S=O.>+0B$./A$/?OWKT;W)H M*AF_24VD-MN-=XJ9Z>6#>#MCF_1F02+&ICXW;^.SW6=1 />?]RP1?5*[\EY1 MX8R@L"B%5"D]3*A24AX(4I;E92F%9':@II4$RB;]R&A40AL/D8E*: >]DC.. M2FA');2?*J%-14RMWBFT._5U=>MP<6L_74:\:7=$7\I\_F+(!)E.G7FB /=Z MDIM2W&2)SV8.?64A[#QDJ5@V$Z[,'6,*2P5A[FF/90L1WT(#6?YOXA3+*N>[ M5N]^HF/F$L_L__MM3SS%G35WBBQ->8],Z6W 7),=UT+UH9_LB &.#XH'TFBU M&-P[#M?OEB[=*5_V["L5ST3FCT6;;".(S*.@ZVA^/_H7,& MF7GIVIJ!;/L/CUK'G00JY\LAJ@9HTU=]+X5YB+;1'$RERCZ!_?A5MT:RH3V2 M ?B]R@V1W+QG1(3=-@L!@SE >86\C<8V1 K%DQ6$F#34\OX%LDY$5U\9H$9;LC#$P M&XT9T[5>:R/;: 3C2H_7?+K:5N5I ;6,QF7/SC=0>O3.UR#*M>*6W1RWD0*V M,Y2!M)&Q)P?#:3&N0Z8+]#G4X.WN&#-#CF4J8S0%8P7_:GK(PL2LJ9C@ MD3S=IUYJNVI __ G&U@*$\1,MARR^X1],0_9Y(1A&EM,!H3\!@:(82K'O(^; MK=DRS/CFC*SS@A$9VQW 3CA@*L/0P"&X]=9X@![\B:A^QU79=@!9T":,.+(0 M-;*9O^ L>?:?:ELD/W'__!UCO+&FC$D_(V1@6:-C&3-U=4>+KS (9N3UUR\P MF,&R!(%8@'$.385V 8)I:)G3]<)L3*.+X]O/8:S]/C/%) M,%";/AVN/X>UYZ@O:?=/'MK]!._&[D=NT"/0E?^9YJP_Q%*"Z""3;/+ 1T&Q ML'Z';=Y,W4(VY@4[T.#^U$@CW"UF'@SU5W'3@^NJP*^:JLD6%B479T^\;T=5 M&Q7)!#HR0%$!J,(<@76>A4:$^C&Q!T<$1=W,[X@7G,L^QF /?;8^-5,]_7Y> M,.*C)_#"UI&$O>0S"Y&*UA"7L#:G$,"+GX2V&U11E@W5A5@XD,7'+600?K M)H=[Z("BGFJV'4#W@YV$6^WW U\CW*XM-#WX^()AP-4-5A7#I:D9@"6*WV' M;=K3''&0 ? 9_@J$$^A(F<$ ' TQ?=F*I\0S;MW<,%,-2LDP:!<7!HM(&K6V[@!'Q)&6%''GP M.>S6C Q,/MC^[L9T1RBLZ?2-^N'RN$('JX.Q?#C@.J$<,, M+"!>J00Q?2-I\"CSG;M2:\0*XQM6*FM]']3L8+>:KO*0U_H);<4)O^& ML'15,S!*=%9!C;OUO!K( NBD['^9#^%+EB5>P\#HH%P31O!C,V MWS<0UI\I]K>TY[\VQ65]H!YL"U6?3'AW? Y?T/U9ZY[@&[LF6&"2^BRX-I+@ M=V8DV_&A!G\C]FQ@:,'YKWDR0/]X9FV,R3%<-_#T= WOMJ')L35H#8-=:GY@ M>4#*KZS%W!H/;+2?:(/)2N PM BD$+"W,\;RTZ/&#!&6F%YD:\4,\"2QA-;@ M9[_3!4;'1&"M]Q%W#I,/=J=7+FPVAJJ];00>[/?VYL+06]8'W@3 CX>,$&K( M^G8FX^%EARQM?47\ 3I>'FP(L< 40MI,@HLQV$C*; "-LPPD'"(Y-=,%>2< M!JR+!U]_"W@*8X=/%3=?*/8VT7W-H&Q.:!0K-]BPK4.SP3V*FAY.^10#"2K@9\"6&!!C("K"T.K(? G_WHI-?'BHXE*V-;L^;-"=)OV) MAMK61@;!3X8#Z1LN/&4[:F#^43#0Z. )7&)Y,ED'-4K:8%!D.;X\N1ZSKE6Q M\I(A^9J$O($K.L^TDZ 9]X4A$-Y7HV0O@*O#NQ%%00[B$<))&O'B^7D\+_IW M_$4P+Z2*DZ. 72>26'O[.&N!XI K6%,\R'@MA#<7L7R1S;-$8D/>''4R#Q " M1R.X>*G@D3$'6"I$.JASN>7J0>R,C;,<$$P+C5SJHJ1_:,=O YW41HIK4;,U M*(/"B I1DUPVD20.,\R19%Y_P1=\R15N'"@]HF@!;F_0NZK9BF[:(#$#K."9 MKJ[NJ"W5G>E@#E$='/H2X=%U1370BJ)AN'@_J3T*)DX12^KU>J]C>,]U;@SOY( ME!\E8W;&6"+! 6#-%V]B*XR<[0"0CTQ.#._E@VM0L$^H$S9ZBNTM4MT7Z],7 MCO-BB\N&!Q4TGH(;) !<,/2[98IPS1E&>=3$WEB_%)L%?6[U1.&D#=8E(ZL/ MV'3UHP] $YI-HQQ#AB;VP!)]8$X/70DNDW"?:G92.IU8$W:BS]GA5-*9*>]3E)=2J8-!G):;BCU\.,O;CT5O^*8B# MO'+C\/Y/,02\[2RNO&2![2N-SB+=6)5OYT>Y:=AH1C#Q.ZR:[++1!S47WLB2 M'^5LTR@94C?>"'#L$S?DPHIMY56RUZP7WLK/J55U)62V;/WZ9QH'@O^+/ M@FK((+*Z=G,2HQN+;7F&+=DE7KZ#]%F!O MUP>@7J[69_ LQ6_YA$;:33N?U/54=U[I/_9NO&3J:GK8)_0OHF1,AR@J,O8_ MS-CT\(\6E1X0W9C1LP#A9FG@Y8S$BE1>W%ORJB_SW;:6>NC5]$6;M9LOBI4% M"9[2Y %"]HY)_KT 2+,+^.WGH7Z,.6AL1UGT>(ALE$4?9=$?618]YE/?F>0; M$L\YGGR'TKL8@E^J02':4H54MK4\W81%!Z2J5&G7.[F1G8C,TF.;[AQ$S3ZQ?X-Q'\1 M#?'!Q[Q;AO;G';,Q+<^ZDNIT)M?IJHJ: MY4<]O<3 +9D]=,R0$PIY;"!?P-C;17(D\K.3L B>E4]";M^40CX'?K(J&J2M MJV:M.TVT+T?6O)>?2=Z/7U^ R,_B7%\6\)]SKD*K[SI>X3K.\IW'HF4WF[VA M^(19\8R=\09S(O855MQS-!,DT 5_.EZBN;*O)[>C?-5@5W*VF9_V\]K]W>C] MO37/4HQCFZ/QXE;.=:$IE\LLR%X,73S8!*B/%B>>$TE\+(+H M9D:=J\Z=V>_.A_UX;9DIUU>WXH]?''>1>(7SAR:'OTYT<%G&,,GM+_!WZT_0 MU C;RW!;PQEC4XMC+]C]0?\D5>Y=4A7"5MG'WZM$7B@=P3(-_".]=F:+AIHC M\5*[;(3;:(8"$8<#20NN7.20>IMT"W,O6YK&[/Z YA.2NKYHQ(W\U>S=YSKTXCK:IL,!47RQ(L5P3J>2Z*[4M& MLVT7[XW8[I*_Q+G$^B;,)A&K3*)L9*]\\LM92-4;".\T-#0(6@LIYLC0UM'!S=?I5$@(?!/UI6' <'XSU@QP"9823O 6 M+CB\_!3 %V=&+]2%=A<"+@/R5AT>?ZQA@0[79772DZ4AU3 M0SD&A%C3_V#E:CL$=<%D#IT96E^$\'H2-=MK0A M*5WDSE1ZG1HO' V'U'= ^AIJ "=(+ )3 ,*,23)?B:-[D[?"I8*\%9H(3Q,3 M:%X2O;9*%@_3"G<8HVD=^,= WI&+D)!?2U->X**@+P9AD? .HNT#3"#$BFQ MC@ZS-EGH$O$QT@*6)(E&9F +24!=PV>FD$01\'>$=Q=Z7Q\>63@6LZ:NXYV@ ME.OSTOFG[V.!*[HC#-G\E-\G1&XF+'*?3UF+%X6E;W[# M>!B&3A'D.P0RVVKP2*%\V'7*N:Y-L?P$DM]/-@O$P:;? M4*X.*8UJ;#X@V3D+,F1(C(>X+C04N4P2SD^3J:B32144(,.-O/0Y&:YKD9N; M ^1XD UV _*&X4A+^C,?T&]H*F,-60#)5Y0E9!5S(3#/&O: MPOZI?!<<&[H9 ?QP2+#6S ORUSC'KX4K?2":(2]$!T(SG02AV<:DJ/L:''H+ M657 '^$O[L@_S-[F(B3\$"G11"";+V;]F@B07.9;F8!?UJ-3L0+8B:*(X.8J MR?;%DF+IYSN.7(UF%^-N\6PM/"KCIT,2M#NCJ;NDM,3[B)HU![]6U%S@'F:( MUMWP+SV25?A78@/9 _<R3=[#G M7Y'7^<87?3[8I0-PA*"1#68YX*OI7B:XVF.SEIC4.>[68U/%KB]8WC ]=98)BX_Z(:N!","V_$DQH#/P;DHG>6]^" MIW=F K\V%@/Q@^/_R:A0B('TO#$7J.3_+GCQ<40LM"_VYB:_R@Q6U/#P M;VU@RINY#BFSP\Q=4G\'(Q#P"?WE&O2B!%+_IC>7B"J%6 [R+1@HY$UR#(,# MQ)^%SN^"VH$Z6#QZIDD@IG H$&='R,T>FAVX5H:!,+ #H0WP*_=0R^I,+;FN/Y5:&^, MZ/5EN!)MX_:.HX/_"JS15FL*LEHD):2R2$O98;"0$H.LH-LAD5J2E!^[#RJ76ZB6^'^L51B MM4HU;_'RH*27O4//A-_-%A.EK#JY0KM=6>C>"HO%^K# M^\>K@M"=7BH'G_2>\_/;SNVXU"K4[;9Q7]WREBWW*[T;?5Q8 M%6J\H11FI:$,+3.[+>/SN=.]7\ER(9Y DV0B;CQP_$A*[H^>U+16MY;BFFSI MIC.^=JO7LXS>Q"WW1A\KE7KVJBJ+$U2R1VVYN> >KT3<&8[;FDUSU)B/&9_GE8#:2A/W1^TVWRZ>E-EON9CE>WVK;OEYZ4S#T534KNY:J97T'*CT5VUB5ONK7V4*$E2.]F\ M[>98[_X.S5>340OZS.ZV+ SRJ;&=F0T* FN+[(2;5>]732F[O_:F+UU>%GLW5JD=QTVY_::WS9Y7&R9N M)79NQ:5+M[[(S95Q23+65[7?X6+4=R%C=-[N\ &LN]Y8W" MCUF^H(WN'[(W]2'F$BZUW]26AI72Y,&KLGWWTC;B7M=<:$UHNK=9CWRYJ:1' M3I>=5^W<;3=KLC>5$33=VX&'SH.HM0J"5EAU6OI51];3\QYIND<#;C.;7+"I MA])$$ 4V?S:FHT]^Z[?5J%;G0%T9JK5U^Z+-EW/2 _/&*?.E2$>U! MP9VFKQY$(Y&Y3N/-.B2 $JASNT+%9:&_%#PSJW<'HTD3FNZ=EI5?+%>5?"LY MN9[G;Y,SH:SQ]QXTW5M6VUD]Y[TNG>P&M=.>K,BEY_4 M6:_3Z55GPP)+FNZ=EO:X["V$2MK PO+AH:P:C[/&@BPK.*TG;LH\ZQG[<"]? M6QDCU=51?;CV]XG$_!0-]69C??I.'K5NM )O *G)0H#8OE]FTTJM,BYH MI5(BU9I6$[/R>V5PO5QE<&A",)RXF0E0]!/WH%(Z-OF(+^69J".C@Q%K^P8Y M<8@'&25;CK+M0E4O>UV((TJ%6,)@[6DZX.HY<"]RK\(&\Q<-!M!'*O[^>52V MJU_:T+?&Z%NOD(T@SVST,_@A/ UAYFP;1FSH VH6L7LFC6,%0X0\[#_"[Y,] M9[0FDQ?9['./CH4,@E#_)NYSB$DK6'_P._%C_J16)&1!OVC ^>8Y&3AH*@]L M4W<=],ZVV[O$&K9L[NUGX-[XVAM_D>:BC?^"C>??>4]VOCG-YZ\ZDW^__1C MYK+KF,_&O5]T(7SL3]N77_KNX[[IW ZX8/_^]'YL>[[DJ* MO<@D@]R!("&#FRT94F*7"=(2WG';,L\E5+PB+Q)TGL_=9^O7YW@MR!\ HC27+DDN1WCGC_OQ],UL\[ MYK[/Z;]HO7[2T]9'N3FGPAIK=BA"^AA-114<)GP>4($QPEH4:_NB>2ZZZ^/YG>>8U4 M0@0.?M77MX$CND MD/VA$SM+H7-\F/!_WV.:GZ[PF,16K>K7/C3<;>>ET?T<%05AS'>O;T=V=V18 ME5':VWYG6+2E^C!4W2]XNG==M>]RM?[Q*JAD1TS?K9=^UVVH(YTTX'9># YU M&;K[680"=LA05H?["]\279<(]#O.+7JS[J#&/DR$*V\:+VGH9EG9>EX^_J;W M@S&OPJ.R^)_"AF,//%>R?DPX\2.HTGBMR.F1TRD\3JY7NQTH>GPL*/XX\3@S@':=_ M<0_YF>2I.?_%7UM3$2VF&UFAD??P-#PL;Q X$0%';I2(@","/N_5?CGD.QV3 M/_'1)G^O7-)OA5EF,.$%,Y-(VD,'I<4WF_PS2YO^W$"U7!BID8CP>C(';/WF MHU5Z=&JE9F%5NYX)M_9UHI0825EXD"&;R+S*T(^7"A!ZEN*9? "2"O!T M-T\\1$JR"!CFJ3R"LU0W9XGKCQ[]?,DRSY0@3P'F1 09$>1)+^I$P^SG#=1. MP]E:#C\HS=B>/(N,_!-RLQX,R$1^IX@DCRQ&>#XD^4F>I#RRM 6I\%\V;,=R MP973TNS)EK\G$-XM++O;6'0_[3KZ76\4_]'>J,N169?*0J76[7.W#6E>G=X6 M!V_W1@4)*)MM6X]>'VX^#/P3JP,^J9:CNC,KKPX*?'_PB-+S4C4ED!=XA1^_ M."Z6Y%Z7@!()IN\JF(XVJR%RE7X]T-Z_?QWV>=+O;9Y8C2S\R <:N9S.X^S. MU>44$>2)GMVY$F3D STV!':Z)H,G+T'5].Y%9YI#Q22-QCKT(2EWVR0M)9RJ6SA(W?1(-&!'DJ M^C BR(@@3WI1)XK#SAMN':=7[\\*"$56X9%Z\Z)TLK>GDW$\S2?CLB=5C"A> M&=VUZ]-)DQ5N'X1+=9 P\[/?SP7[DV)$+MN][NAFXW[2K^0J_<0TDQEK38E+ M034BCF=C?$8XMVRPIPO1G) 3Z4=GS -THG/&HOXY\423H^ 1 Y M$$_47W/2E?8BITQ$=1'5G>JBOAP1G9"I_N%%A);-VO)V=;/D)].'>KS35U-E M+??)181ZR:PECSJ>.9F+-VEYZ++YJHYM=.$M583.&[(>IZ?VI8CY?A6A)\+F MOUM(B,L^4TCHA.SH[^4)/J;5GFB@-*+M(W4F'=-J(]J.:/M<5WNB^021Q_7K M/:ZOJY1TEL+F^+!@]$[)MZ"CDWG0Y'LDD7R7HD2S>VX^UCVAP5YSBU9"JN?9 MN^O??Q7K#XH2S09"VLJ7M&[W^F:>2_9R0XV5FQ*7@:)$0BR93)SHHUB1-#D: MB/J-GT?ZMR,/=/0KX*$:EFB6IGS9Q/[@:#4#]^K\3 C/SN,)CVC=&2.+&6J& M;"B:K#/:6KK;C&$ZC*[9#E+QQPQNR) ]HUD'& V;0T96%&R:X+864A 6:OC/ ML(/[;%I.7&LB:98&#M8T-/^&46VK!4F0?]; M>/:F:S&Z:8QH8Q4-G/ 0]L$Q%',ZDRW-QC]ZFC-F0'U *@;>TX6,%X3[QX

KL=]$J] 19"*,"!WNR'68WS-\G_' M+_8B^^3!73!]A$^(X%:5[.,;=AZ(;42:8.XQIXCNNJR,,:N--67,J)KM2VS2 MLPM"D]Z=P!*<"F&TG"$%3IQ034 KT'R?2AC'!'%HPTS(#'VR><.4@38T+&C) MD(,5XW@F)@9S8".+*!F\$K )8EA^&O*(0'F"7=+_V&OJ# ;!:QWX,!L^>F'N M()2=+1H/=H=Z?_Z2Z;]$&FUI"] FBDGUHB+/-$?6_[Y@VA@M:4.,G&"-8QDO MU@9MBC2B>,D433M8#_P%JQ;=WP33Q5(0;Z2K@^##G*EJPR$BZB:TE].-.8,W M.N]:P>J&FH5GLR5>>38&?[(H][TSN^&AR<0E3O)+VG;,4'U;7N,ZE?3]N%IH3=OMONEYQ('XEA! =ZIJ5B8OH#(6I9L/&$DG/D#,J&.(4SK0^?XV-N MURPC_'L]*S3:XYDM%Z;+JE+4ZX5*>=S\\DF(%9FD@R?)R.CG:%&9Z=19JK:YNF@8>9NR9%Z0[\5<=8LHT04\,?,EEJU''_D']Y M]I__:%NG27[^"<)*4_"Q;'P3S,;18V/")G3!XVX T((M!ZLG2)UR[)IH@0A>3BGF^ANHKZ7C+U'L/T;4MD%IH@0P7%2USFO./MH_%?,ZUL:F,K X> M[%(WE8GOXAE(-Q;JYFO9>(:=WR:+T\=99Q[GFC]\J8"M)-%YIIT$S;"(0EA& MS? T\&&A3TC1 :JB.3@IWUW@KWN=57-&)C1&7=3\Q)QDT67Z0@-@ (AV4/;^ M81/YM)JA+28?:DNDQK&04+!E# HV^!G#"Q28@)@>93U&[61 $!;2I@/7L@FC MSW07FY$H))@N&)&QW8&-%;0#UO(,&[P$8E.3-I@HEJ5$K %.QS09%FP$O%@H M/#L&\_5F?F0N&K'K30Q@'L'X78"L)+.V,3:Q)O!W,(=U1% :4F37WM%LKHGG MC@8OO''@7@(Q2@0]/GXB,0-U@!>,9;QLDPT"H$0, M;Q4Z4NGIZ%1L0<\F%F_0@4FS!;V"C<+>L9J9(2%KHW16M&T]@_FU><2 M"V]]:.: F'";(X?3WGA2P+5CAY IK!!:@&8T[(W#!P-DS537T<([""3T0V0)HGY@%_ M"X,2S!A3S:8L%? P&"&8L0P\LY&)20//!" )B P"EP*.!AD5]+4VS4@OOK%! MQ0QF%$R0ID+X%'> 9(KDZ C/;%B(O61[S7=X&XT80W8GMF?AA7K P]KX)WNH M8:)FZEAHHC6D8R!ZA &)3 %X^I&K,PDK!ICLT MDXD.V>PO@#4L@K!II\V>) V0=G#X@1F!AY6)W0(C!&N&">&3&FH.LP9@88_V MOU5M\>L_^#\!NR@ZDBWPX(__P3L]T^753^+8]3DA3GW[/_GT12(%_($_&E,( MD& O>/C(]_&S[+^ =4-=;_475Y"N/YMO'/3PQX$-!0'T#5B93X9R."A?VO[@, M=\%E_O7/ %NO^$]L,+D$3"I[D>3^Q6Q^A$W8.Z>IO(R']LF/H-"7 NBW@H]( M7"?XS+0)-O\9:,2=(_(/V3%G/WGN0M@Y8&'O=-\EF2:Q.8G_R,S8 LS]/QU3 MV1'\;QHB9+X8P#KZ/V&TZG\4HA'8-S \B?+&_ ,8G1HWODJ1MR<34$!*2"A< MZ.IR*)KT#&?M'MZA4]FQE)XW"P*X_P;C@/^ 0-L3<200QY9*@0.6@GB!A@\> MB,F,L=2#:?D>..HH"\3C6%Z@C=H[+ =C(.-]7]Z>1J(N 7P*F@I*"[22'5)+ M-@A[@G=\(8SACP;:'TMV0@H$&YM$^_K=VP'\60MK+&-]QQF>'0;O?I>!HKI@ MKDP/BV,+ZQY%D6UB&N-Q/$27MUDMB1F])/4I#GWCETC<)-"E6[-_1OT&&O<) M-;GQN80<#S;Q"^H$UV !#RU\DT8;,C($P6@8$+2PCJ6B0>@=P"\^]P$X-W8] MM$_U"']_%2#8.2Y*A/T+[,4,98 M^YX($GMF!]\EJ/>,)^0+D;*X>>2;27 QW[E,*%[]H$C.QB$33V;N6=-=)2=R M+;&ZSZ>:=[WAMB\Y_89XG._!:*$I-IHP(30VAUE?G^7:&9P-.8.%8GY1EC5. M[KH/;2$I"$6O*(@D"K=_"XT9T&@.16_^6$\+@7Y @T"V:[R[$S-[Y4;/L*$K M#1YEOG-7:HU887S#2N5,IBFRXIN<^$$RU:MVK.!S$"8TW*0^;!/(32>*9V8Y M>;P&DJ,%O"HIANV04>)L,L[B :?UN'AYG^+8E? XOC2O)]=-=A0^9/ZUT;K? MF"YN J@20[SUPCU^I_7/_U\8S\\*A MAVT9=1/),?#I;#,^Q$;BVC).N?[G%?E'&AKU1GVJEY:3')NK%)3!\/(Q/_IQ M&-=09/L9D&N(U[X61^2?("I%7=PA7Q9D>>AZH!@V^S60=;)7$ M\(K3%G[]W MXC5(3*1> N)[-,/Y+1L\H1D+4X=P FRE[[-;R!BL@;,.*6-#F[O(WE*6U*6V M#R "UYB/60Z,%MO_5FS'-[?CFB,6-AGO"5\?>*H"=8XY4W'UL'\6TD+ JN]" M9 +9""-1^(M#:4W1+,6= KD!-,2F/04I6S'?C0_3]K\U,\%4T*A/!"QMV;9- M12,K(.A,9C"XQ':N"^D]&QS"= ZY(F.^$\&U-P@S;,W3 %>,S&Z M@+AH1 R MGHGJ@@<04V(,BZ@Q4EU ,=3Q 7I@'8[&B,S$V!3S6>A8 O-IZAHX1@R$5'O]FXKMG%4P3PS-?:$W MU?P=)5H,8E4Q.KL .1+&BF$4C]&T ?/!(UMHY.J^(3 S(6E,\3LQ5N'$*[I1 M-D7TQ%S C= 48CTRH1=?>F!3!:]NH5GX *8RECC#(=&RXXTOF"2WP6\/* 2@ M-T0:.D*2&$=41M@KX^MK"@([IH\H@8JH]QU;0YBO?1I?$PCUTTY-50//U"Z? MV+ZOB7C<@4HL)-N83O!>8X2-H:Y/!'XWY B@%]/:K"N(7FS\4#8U?CRPJ_ . M(A6^0F*F0]WT8H=6%/(Y!9D59,\/<@'98G!?JGB.-F 6NM_ H]\EXPWL$9J, MN&\ @[%L0TH@,<=L,"-!U$(@*1#,F[3+($'@4!S9IQO%AQ)_^5Y#XG_RA9\N M:U/[;\QR6,)K*DUOD:<8XV VQ#K!G:)-&#VV!5(&IH%9B(:V0!1BJW:(D"_* MJ/5,8MB4ND%R^2DN 9D"%6)H1G\F/+.K%BCB#63PX74'CH I<(VN30@Y49A[K==RXTE*"3FLX8#\3!EHOXYOF+^S*R!A:.Q*A\RI=7 +LC5MF[C*?5(' M9*=H,])MF*2(!->W4@B8O\;8U,>R48%X:)!;"PU!EV.AA/OXV\\$!:0LVUB0 M#X & K\#K,8EP3YG#(8\9ML+YNSE2^ZP"/!SQVCT=X,<-K$ES"6AYJ85Q#Y( MU@?AEX"6L.*@*ANMPQ&^8*%,]H00 @A*N3((#/D>/R!D&:LDBN+ 98JUESD+ MPAF!.%@/3T77:P>#%&*$)D3U$;ZAOQ'UJ>L@&NB>!',B#8D4PS]"-\%?XCYR M>-WNJ0A8>]/9IAOB]H5^H#O"K7@_0WP1RJC9B0-#(B!9$\W;(YY'NG.$Q_PD M='\=%TR.[A,%MC;=K37XP49I_(F5Q=:XSH+ \7H%/LKS\5P08=Z%OT\<",B( M=<:V+TF>@S1A)YZ]#DH[F,\=&N?S 9G_58CV;6+33-F@:@$N#Q!X'WMN7G#* M^[[B=69$V+T;V_/_0HN]<"Q@G\!T0$ORW1&S[9-$%&D2<'EP;D&:] &;B2A: MUUJG+>!.UJ@.9O!,N'.M&C6')DH016[O!%&!9-0'3!Z$L(C/B2HA$.QAY82G MJHSC[HRF,)"-MR$C#\MG0DCK5+MP('3G" 4KI49 P:KSI @6M@2!"4%B2:; M/+WU=IZ]2!?M':3@2UV-1ON#A 1*;S8*00$:,]XV:D)(?1> $J9O4MW-;2%!]JVD0'0*9TMH/LN.O^\FEM =[ MB\JW (ZU!> VT10Z7F@_"0\1OA]CP8Y/UG#&-@:5(#=W7>P'H"%19D^Y%->) M#M08QP<-?IY@[I '_M[>^C]/!'_+99I#N98'_;OM8"/*1L/?A@;9AVRX(BIT8]?B8O]\N^;:QKE(4!/\$N0-+)=K]*&3+98$L*7 MBI_QNP67==.V??'K?S,6D/@##4Z1%GOT/71U/6PB!HX26#-&RUNY:3"1V&[" MUPXC'$BYP3/U,XK75_I@*L3; P'0(%_85SSV%A#PO[F&K:';@,'W?$6(FZ@T M)0WR\TW=MUHO?7]P>XR0LQ,P/<0AZ^1%NG^'ITRRD0+6M$T*!J#YR/+; ?\' MNC8T''BI;>816>:^=/@&UH?H/!4'_(S[76^*"K[I?M>N5%E?UZ^&H R]0@)- M#XH1.\^/M+O"JM>]=A)Y-*[UQKE;[\>O;/(B^:0<\>V#M;UU&$+M(FMYA,'@ MB'CK=]&C'5Q<>*(KCY@61B!;%-\#.D @/ PT,AT*]OTF--(#0,.BT8,G,O^C MU#-(/>.CU+,H]>S(4L]D(J$DA#B5'?"RI":RO)3,I+*2+,B*Q"FI=$:1>26A M0A(9S$\."I.,[Z\+SK U;7;GVKW8+@G3*EHU >GMMKQF+\=LO.[D"O..7;LW M;*78\T3<,K7;,K%3TQ*M94Z M$%=2\RXIXI9[H]OC;%E*F?5*MV\.;^SQTNYDI]#GWNA3)^\M$H[>Z KMP6-3 MCF>KT[XH)?='%SW%OEWPA5ZA?2MGXM5E(74W&$FI_99-5&ZNKFQ+G>1MY;I$6ZY/4])4(9H?._Z'/DKP:IRXSOOT/G?"5?FS32O) JN*8XT M4RL-K@?>H?-_7*)5J=48*H4IAXR<:1>T!2<>.O]ED2U/V^FVRY8F-UW-%&[+ M2JEYZ/SKZFJ1<13'8G/5LIE-=UH5R1'Q^>^-SOAO3RCEWY10FGB?A-*!?W/W@A$_%!]^O1U*KA'GUHZ*'+@VNC-Q[6[H MF+Z#X2V(064-20ELF&;89RS3\+6L _@/L/H ,B4.7ZMX MW@$(3@O3'8UWC(#S=]&])AVG;) 8%U#1EJ.(NMTV^37D;$AH(N2GV^0?^]$X MWQZUY2D*' RRL]71EH?\@@&'!.0%KWT*:Z,6\@QH8%ZS;1?M^_0/3XG>K<8K M\J.NZ_P;-0C-'G!=>W0L"ZFNLG6-Y3"Y$=?S4 _TB@-[EUY:I:$!,![T38:QSX^:AO?:?43&K:,DY\/W.''\\2G#3YZDNYK MC.RM"E4[\8UUL9VQ[ <&@T.AP4N8XCHZ)=/;J@M-!=]T&T\5A !<(J4CT6B* M31(J*?F%PSBA!)Z8'QHF65.@9Z$#I 9-8QNO72A.1>HP89VMVZ9?I,D?WZ_^ M15)\:%X=B842P\//QMK>W0$)HQV^+;LS-14-$4G^>W9J@?]P]0V\;;26V8P0 MT*X?E9;*"ERHVAMT47_]__9(5T]I_=>>Q49OS:5/&G))%,\N.(- RD M!A:8&\Q*[IX-7"<,+M8)4P,JBDG!%Q)G9@"P6"29>$-=>Z4AWZV,>)K?WUJ? MQHA'C1QP1/\1_<,]2D #\@BM(?\ZM6-3Y&/+D*/9>#3I'7)\7#\/"O(F?+@' M2A5X8PR5A."/?EFW=3YT4(6#5 " ;Y!BE5 :&; G91J2) WW0+$ JE9CN52 MH+\&/?8_$"N,F"IBJN-AJE F>G#E@>3X^83\8 [6N7RA)J Y5LA/)P/ML=%% MM #85DK'NH,@:.[G<_FW3ZGOW6^KT"RUS:T6>?-UW_H,I<:_$PN]/Q;[H'): M3X9?B3.-Q%#V2VG9551(E.]O!P544>\O)6DVSL:;[U0]0&"K4/Z1

-74)IQQ?#AB$ANFXJ#[ AXV+X]KX1 MPUU."#5\O3K9BO3^837^;"K:^"_8>.XB$^W[5^S[2T\@1#L?B9KSVOA(U$2B MYGOM?"1J_FSC7_/:M^PZYK/YCR^"^@]9>]!-#L]H8&E;7W_+EKSP1N9SJ_]= MJCR%_<"KAP])89SWW!LN=<&^[\M4F=DS2;1^I\]5H2:I)H?>A(_((R(/*&.O MD/?\(@KYLV=X3T6OK(EFCQ;.2:-D]C;B.1Z@)+__WSTF^&"QX'LU?=C%S98, MR4%@@@C $8D-\$Z?EHR(2.+#28++GA9)?)Z\?(W">.&Y^D_3&=V=Q))7G><+ MDS^6(WTG'?>;JWW!@?51C^N^V_2__-7=K[\5^Y8GK0-&:JU??+5SM$[3@4>L MDZE,0Q/CMPT6<=KXRKZO7+4XN%F3P))5R,3X#/^J5ZPCSHPX\UPXD^,I:W)9 MR9D74^9-02D5M$Q1%8H2&J3E3V+-9O->:/ =JU+();5EKFOUTJ@#5]D$S)HI M+I;D]Y\C_:ZL>0#H?#6>:2%2D98\5Q.<]CN\VW[,I_!1(;;37--Y"L=N-P?%?FJ4/*D)."6-(8MW/Y-RXCY(N8[ M<>;[.&3R-NZS[^\:\VGG3NJNX@ED7C;D2^]^A+D/0Y,,%TMD$]^-^T[)T[*I M1;M.I?YK+Y?Z[^\*)3_(ROM$C^K^9@1.Y \W!3][E5\MD#\,#94-N"1O6JNB M:=V8QJB#K/6;U7;=:D!=67EJ'Y#-V;'RD*XX7J6 K%6S+HZ'ZG0%-4@24.DJ MEDE'#IV(U2-6/R+L]?N\7I%+5B]GQL?LZN%*+TCY&_HL\WBX[Y@/[,?MV61@DLC533A9M;GR)T#WK9WT.L?L)"OEJN?KA# M:>^&8@TJ?CWE=>]?:U?(=2?61+B:ZQV1\V0106$^#)\2J6PLD6:_FVT;<>;W MY,R/]S:]C36%IGM]O>CTIA.^=..)CY<9M_O8Q*R)T4XBF8QEV&_G]-VZ=O[O MK?O>QW,-_3/N= >/F)$*&Z=9II)OJ=?",RS(H"?_<(PO^^ZRQ M]9-SAY]9.*Y3^^PJ%NM'!)ZH9-%U9I/*O%6QNO%"O=8O%!;5NB=^;B6+$&5% MY2RB^X?1Q<\3W_CHCGETQ_Q[[7PD:B)1\[WV/1(UD:@YR8T_X6O'43F+J%Y! M5,XB(H^HG,414L@)ZY6HG,4^#T2U"Z)R%A%)1.4LHG(6#D$$VP&[[YIW&5V: M_QY7T]X]C>_E^&S 8OX+G4\G#DTRTF6+-WB5U8IB*5683+O%=),6N>#27"R5 M>MU]M8A?(WX]%WY]_^2^=V38\J)O9^:]S(3-=3KI2C_Q4$M._-(77$:(L1DN M8MCCO=@@'LPJ.O-4S/?,DCZ:.V/1U; CQ3X^B]U@#FL$#/:T/)53?<6]%^/# M"3^\K2Y+JG;76#5IM8Q4C,^^[II8Q*P1LYX^LWX%\'D;MT[TUK)Q=27<%J8V MBU^V]P"^U3[X>N M)?;3TOE&3\IQ1UI8$V0W$T*N4<^T9B._OD9:B&62Z<@VC;@\XO(COFOZ"C9/ M"(WT9H"5GKF+ M>I=+6[6DJU\6D,QF;C*=EQH^81VO_PB>\ MH@Z7 IVQA1 SQ;V-;0;A#E2&9#3ZN\BS,=Q$=AA/)E>I=1=:^'=5E5TB7S$# M_YXJ_L;^>4 ?\FQFF4L-"@SJI\H$KU(@_IZWUEM^^ IVO>,D[^>FTXWG9D,O M-]$KS8+XXU0KC_K7_BS M-/XGLX;XY : ^2",2^RGZL-___N_MFX>[&$/'SV&MLS?"IX@BA&*TXL-\A"/ M_U/6/7EE^XO+Y'D_L5L?H1-V#NGJ;R,A_9IZU(Q_=;V MM6+_LQ=N5_B'[)BSGSQW(>P[WR"FH%3 FGOD[3618=D,E_E!9RROS>Q)X<[FQ8[1Y;V..VL_UNO%5!/D_6[+HBBYH[F6JW;; MI>3WZ$T'A83I M3.("9SP*-^:LQD.?J=V6 NNL5GQ#Y"BMJW2=ZX'J:: MA7:WKC[RRE-YO^6AH5]FR*U=9 MK=GJMQ3^$BTG32FSW[(VL43A*EGFNRZ?,J24.A4]S<,M]]9N9N\4O5._OF/1 M8C&_E1JC>?M:Q"WWSJ@PY_/%O)@I3OIM4>XA/=$?S:#E]AE)?#HE# =R4D)\ M0I&20H:7LL,!DOB4FE%DE$P.E;V^$[?R77EP*0I=P;R_*C5'E_ERRSM$IZ7^ M5:I:GWIF5],>]+2U*B;&;>\0G5:Z[G*93)9RDW;K2KC.9!;#X71TB$Y7!<^^ MS%?N$H6J(G'J+3ZH0U^>78]2;R M3::[,OGNW; +?>[-\U++)TN7[=FD._?ZB4%C>"D5"T#[>_.4W6FQJM7BW8EV M[[#2\K'13+"C0[3_>'7EW!;:=74R3;OQYMVLDM-M[Q#M5P13*E=;=J=;XGBQ MW7;EG(FI[P#M)[UB\8J=*,I$BWM%ON:,=+4S.D3[SN1^?*WT*C>3=KSCY=1T M(U[A#M*^?C6KEJJY^^M"O7Y3?;RYJ:P>.?$0[?>7!;4A5?0>VU:7Z?[$<;H/ ML^8AVI_%I:M!:CG0"O/KU*/72-R7V,H!VI=9#J&4($A9%0VD)*<(TB C#R1! MS3:2&Y1RFH.NAGAKD>IGW-2)6'/=2Y/TC[Z=%DG'DLJ>PD;K%7'7DT M'I2UYB':5R_E'M>^[F?9MI!U,_G;QZM%1CQ$^X7"G"WIYN,#J['V9#KI3(P[ MVSM$^VRI/BP7,L,>>WV9?2Q7I%2CV3Q(^X,;+IU:W&43W?G,YKUVJN4NKWG-&A]CD MLG ]Q8:%9W=Y/==8:4UG:=X>%.=LN9>9/<:-6W8UYBJ/[?SU.!,_*,Z%FE6H M*UTMQ\X3=\8X:?+SUEWS$$D7*E[:OJUXRL2-.X^/#<]E\_Q!<7Y98^_JRO7H MCIV74@5E7BADRIYXB*2'I?)T-1TU,I.IEDX5[!ZJY":C0R2]+"\*;*&24MEZ M_EZ?C9JU6E(>'2+I[&J1J[;)RT,#>QF M?"!>#@J-!/2Y$Y2N>R05844*PSEW?___9 M^]+FQ)6DW>\WXOX'HM\[$3,1X-$NT3-O1P@A]AW$]H400@@A(0DM"/'K;Y7 M;MO0-G:SVA5QVL?(0JK*RGPJ,ZOJR8RH545YOU?TZ611/WI< 0=325]+U5+MQT$,1FKR_'-BD9:BKM)K' M\4RJI?,'M9_P_,PH4VF,L&6A[@7BC,F$XX/:CW6513K7#S%1%Z+U3)!4F1B$ M!R>)=$H?VT2]:+07];DL.7TYUV\>FB3D-493:\%=&SU9[SCK4C??68:')HG. M,C/BJDZS(];+,M:KDF5!TN$4M=^EYJQ9S5ICOB8)],8FF&75:4T/&E\&\TR6 M:.+ /ULHVLI.!_FBV3QD?#V%2LE1QPW$B(U"GU)&J6)PT/BZ47LR5"+7$I=> M>U1WB%P^LVP>,KYBOY\3O(Q-8]' U8/0U8?.,#QD?)5-.9O%R?[,6 CD.*CZ M657G#LXG='I8F-FC$B\N(J78P*I<;C0.#QE?+5]W";%36V*ZMI[+1)23*54[ M9'RXXY/KV:K.&K)1S#)"7QA5B.9SXWL5VS\2;%5<5)3&VB>[*FN:H6\[7IEF\G5K*K MVX&74, ES79UU;NMS,V9^-,>TV/9WQ(!CZI/=QFQ/Y"GV7S34QQ>$<2R/A"E MY;+*"(7F1#Q!P81O2&L^4Z21UB#L.:;"9YXH"DD>80U=R?XDY!_O9M!N&$R MFY/3^KRMC[%_]3[IT=FZ\8!B_ ('9BO?H,@]C+'IX2 M.BZL&<=WO*UJ,#E]7V-['D+>E9[LUK.0KEQ# M5XC+SS9_HRL=VY?-.]24]_K\9]VY!B/!)0*8!CP.==ZCB9_F M#QB_EYV^M_/#[VQB\5Q_5)7GMOMX=,OCU[HW@@<&1]L=(;L-(4_[09YNK,8' MVT:[C2ZP97Y\0R;P=$OUO)V+_NR!C2)O3<3=]=W7[=Q0:!25-6?492?32LWU MS(1H?OHX\VY[3'@/#"(L!YP@?@@%\$)(FCHOAOI"- MW]/2H>3O2"V_:UQ]C\N'?RX0@5+Z=Q#F20#:LR^A72T:98NUZHJH3DH\VYU[ MM7;YVNY;B:SF?%YH=T3!G.D&Q\U:78K?\:!C5!+#+UVCZWO!R#TX? AP[B-D M/( YK?&Z146;UL)8]&>J0ZX*YI2_MCNYHDJXZDJ#B11)&Z;+9+5AC]*VI.P4 MF<3I?39=!#D(Z97-YM5Z4('QM+IR[-Y^&JV&.NC>B"9DEY#9ML MC%3':"FNTO'4/*13!#$GAR=9]DR%3+\D@X[;BQ&/1(ROV57.BY K& MHL[@(Z<2^7AB_E=5P?UP9SC"!$TK8YJ:C4K[WSO)#J%=K#H%K'5%XW9[K2 M&3%CZ#; 0! CDBSW[?R&>UJ%%/25;G[7P/Q,*Y W6L+^Q L&WZ>V_2W%F+&] MOLP/3F:]S<3/Z0$6F4I_XM<:A15^[6ARSM5MBR@GKT>)(.BT2PE7Q:!;D@8"JZM&M0?PJCY7 K:[U!4C*);#Q<8MUZ97/T I M#C8X,6MPNABM],S <6=FNP7K\S#;'1^F2U BSOC%FP5@98=;'8^D#<-,2 M6Z4^:RE5J4OWSJV\ZE0N:G6L$XL5U(A51.B2^>T'A;\!^(A4D 8A,[@.5S+@+J!]E^ M/M2'0^[C!7IQLUA\@F#7:J7YVJ:7DP2R.)$B?,((X;7QV)F2FM\CZPLCLBB1 MK94)HX/!>FH@7"58+$EAQ_%G?$2W+F#Q?TX&?9ZAVLV2X!8SOK&!A4]!D,-29)*@ MONQ,\JJN):MU]+\DCJ$&U[KZ9X!'6 M(*SY7H)'6(/J:GXSR2.L074UXT^HKN8))('J:GZZKB:>OJ_J5ZBNYE$=1W4U M45W-8W4%U4I$=36/T1-45Q/5U3Q65U!=S:]R+!75U3QI;U%=S9O>S8.GG^WF M 1^N7E>SJ'!BHR)#7A195%VA)CJY-BILBLO,%U:^EC*@C%\9$,4P5]>:V MKB:53N)?KZ[F!%@BKWV@LL_BZ>5:&["&.E2] ML-(6-=S5MH4J"3S)4<=5$T 8\77Y(!%(7+90I4"RU:8V;LXQ8I:>D&)KM5E5 MKNW?%"T.%:J\P_4X5*CRKL.\ V6@JDRY3JQFQ9'$2'U6J%1,M4)?VWW+I(P-F7+3 MF*$NS4)S/,E1-3O<%:K$TTF*(;Y:>NY+Y-T1/-Q[@'< (4:S#=7D"ZF*$?#T M!F-:X;C5N_:J?:4\5^9#I>-A3&HS&W4,D5\0N[*2!)-DJ>-\/P007Q @4&!W MM&T'N"M3T8JIB2E5%=I!*M,-U6O;=GG$-%(&\A4D.Y]Z\5N1U;S:D^:"@UBFVQ6+DQ6C?H;K7 ]ZZ=JO,S MJ[QN#1I3C)F;-;,UXBI@-MH6@<0Q/,D2WXZR#:7C$7;<8!5(4JTH+"489*N*7S:44\8-4NT%2.L]JNRJ0.)>D MOBG5ZYTL\:$JD*=?WD-5(+\T _=5@\P#98ZF=(_*1<6(-?01;\XG0H.-ON;IK;*800IZ:O!?&IM6Q*%O&2=9L4VE*VU98)!DNR2!COG]C M_MX5%E\;,R5N5O@2SYI&?3E6N]-)95B87WN[#E$F7%MNFQZ6FC=P.-GGF^ZN MPB+#X$F:_E39XGOVI+]-A<6=!B7&4:S&<'@3?N2HB5#V$N"_J6V:=N@E_JE; M"7]F!QZP!^]?/U'%QP]6?"29AS0J5^).36(+?FFPD>97/9+@,:I"T$2#PQS7YBAK]5)RG%U147Z@O3E77V!.T:0NEQ+ M7>A[JTDLV)Z?<%5],0Y<+]["\$_\7TAS$-"\JSGGKU!\BM:"$S[S";VK4WY_8U1VPW\QPM M 4E&(;NDANLTOZU7C%-4DKLX 0("E"_;6P0_;\#/EF +-.0%])RH''(KU51+ MJ5I0PHA-D>J6JL&T5+_V:;L661XNR_.**LIM=][M6)2)5\-M.626S-E'.3&S6W99AI/XA=G9OE>$(1)=O)7_LXL;*>#!?F4)N+PG!=-?NNTL9\#70:)X"[DF:2>/JR5=[/ MDT2[%%G+Y7-AIZSR?@](_24!&>'NK6:\]NN\KI3B7'<[,T,BYFV&8)5PR+6O MG?"RY6G=Z(6:*T9*H5FPA5:3VH3;FN\XG22I,Y5R1HAQ)YU"B'&1)-4^7*CX MJ"011#:/1>R4)ZN3N9OK7IN^L[*A6,<6>-X(R*9KR;.)**O\MO0[ARBO/F2L(&\C*^"&I^S\+&56\BDZN2,E"+5<:-- MU++!M=-!1MO6!U-*GXIR2$>-GCM="RJT\&TZ"$_2YZE"=V=9GYO=&K4M9:2K M'DKIWU%*_P*LZ]\3F:^0,3I00%JJ3+PBX6Y"8SF0\4:JKF>J_+67"3=A7FJG M*NNVF,<#QYSP%M6FFR,Z)@6FDAAW'(THPI0;Q91;ZBT"GTLDGPX@3S0L19'N M#$M8H+>'(>&.BIQX[2AR37B6P71:S>T:]WN(6[7RC6[]Z@9K9:JJT;64ABNJ\M.F[JD(J M+8A Z1^_*"))46B+%/)]D.]SWI38 ;# 33;0:8$/I/QHDB_7Q>5TXEP[)=9I MT$Z[Q+9T@]CX'690" >.R0.PB%-B%)O$V)KFS7-FU4V+/RWJCU8A[QF0$ MO;>:\XJSSM%S2X/@KGN^JX\#V.;'8B@)M6O2C(9:GK9(CU62F+VH 1&!2BTNR1Z;3$8C<2XH* M9:)N.A-U+)A$2[D=%H1B%4NMZ)$]LL<3K7IM,"GE:$(<698H"G9)$3!Y)$2= M$(!)^L9, +X$!3:>G6[6Z\$?:6;:)G@M,L$%^27N]ZVK$MW M\N:Q_@HIK-AZ7ZY&F+0G4&8;SXMRLZY4F4&S6%"N/4L,.P5+2='66E+]TD 8 MU_J]G!".V#A9E4YR1WJ'")/N%)-N21H(O&XA;W8 N=)5)TN60G:#I4JK5IJ5 MUX0YO'::?9P/M:7ASG"LEQ5%M85CTZS7!,C%_/C%TDF*8A%RG7G;%T*N%\DX M!%VWD:P[Y'O54J6EH(2AI*O*MYTD/ V+;%5ZK.64I5Z9,/LU>D%UJY<.] S#5$S M0]?!Q2C==/%&MC?0QCP FVTZD$[2+"+F.G[;F6\[E\H%/II! B>V&]!@X8$$ M6J,Y'M=)@&03.X#5/2X"[ ?IZ4^ R!?HQ\U#\JER>8ZL3]FR9L_%^LQ1S$[9 M*2M7YYD/YQ&5X3>Z(=85O-Z<3S=5#V^.N/@0)%VO_G/M&]HWL^]3I MKK$UX@B&3^FB'C0HJL*UYSGVVN%>?5RK"%S9PXS49DHL[54*&[9#8-S,CU\D MP20Y[EXWAI[0N/?32G=IW(<20LBZ3YL16F4V)&#G,Z:0Y$&7=*Z<5FL'1#/ZFC1,ZWBFQPUE7 MS#<7]#1<-MN]_+69*0OJB,'7629CJ.L9&ZSG["9=A/8(TQXL128)ZGL24/W; MAYCZZ[\3??7QICS\;LRCYC^[XMO.]B/X?;:MF0AL/JTN_N/8G@XE_--53:!* M*_516ACV#]BC9XW93S/M[.GQB5"F>X^+7_W J(\;M0CZ 7NT43C$ZI,($[ B M8P)+8/"]_P8O?OP9R^6I%5OK!BTP9<=3?S[^\I]/#-L;DHK?F3+ER [\GU,8 MLCX7S*[YNU%_F9;Z4#M>Y[ @DL2)K#]J,;>GN7%YU)>F\4JUGZOERZ'[4&.W M'^%C0)L 9I@O:I?N+CT#0U.=PM<7+8@+X,D^>'X"(%P"P(WJZK(9?U#VZKTZ M9N EIJH:0UWL7SP\6M?P%9.L6L$K_)\F0H3O/K[B&1#\.-D!X6<(].SY-GCFU+3#Q_X_ M?DY!6_DY=E792(6@QP<0Z16J_8: IUOEL6>;@?\:"\]7!Q@_?DR? ^-Y/50D M^#,)_KU#"TCPYQ+\.P)0E^RO!'W/.'*X_7/V0^1_ZSCWFWW?9]K%M3HX6 MQCO;A=_J]ZWL5#VM)$"_X<7__8'C/TXJ%CK]@'$7W;;/.2\6H!75\E7WE2#' M+Q[Z7&X_?N5L-^'/5/#/5=7$ MPP\Q*J-5$GB:KL*K/M)@,23VY_(3 \_=]_ MC\^G6"=?IN7V].HM<3SNJ7C>PU-BQX4UX_B.[PY,G'5LOPAH$*?%#)QX8)C[ MP@RX'IYRX#Y/I"](7][5%[BY":G+M=2%?L N>S+\;]5%V-L1$F]Q09J#@.8= MS8D/XMV7>_IZ!^G!/O]9=[XJUUK##E47G:V_HY(L!S=PHR(K1VWD26L4>6LBOCP^KY=Z:VYI:A6Q5Q@["ZE4GDK,M?>1A[U.(Z\6&RLPK>"A;18.?Q&*4_[%5(#$F1^_&*2#(X@XA;+2YX7(KXX M3?\I,.*$S%^'H*+;PAI+H>XWI$6U9V&&,>O-&ML"',RR*#-LW@J4Z*#.5 M2,A9T)U( Z@@DPSQY:B_D#N!W(F#4/%)L][4JK,!4_176&HX3[>(JM0-PFM3 M/.AIC&6ZS29K"&J^U2<8/*7D>=#I;6U'.DERB&3KAFL[-G1'-8$2WL>)?%0 M!15 N:]L#X!QZ76R)W#SK=)@B>7S\QJ?MOKNI'KM9$^9)*D)U5A,L7K'RO<: M2J$WQ9HC*B;%9Y/$D=X90@R$&-\0,4Z7^-F'B[K5K'@NK4NBVN&Z:W9>'F2O MSC$2%1QL84<8+Y5;W%1BAB,56_ +B"Q%WN6(DM?%"M0H<9O"1:GS #M8T9@ M:*)E.V7"$%+6E)!UOFT[U\X58YTN5M7J3D;4]8%8==K#PL;3 &9 GC#H8QR9 M+4:X@7R,KP0;GS/QP=3BF(TN=,1@I.AJ82H'T_2U<[R;7+G.-]G>2EJ0_:PZ MKDV[% 6CB#@91%))#D<%&&]X4]"V_*>N>G>>>?]>&X,N563QVR'S%?)%$BRW M^Q+I4XH_(]7)55:7GL[0646JF%^LQB(O?;26J1F5G;-0;\B_>,732=I!D=X M@?R*[P,7GS/M '=E*EHQ-3&EJD([2&6ZH7KM_.^ '4@"Y:AE(\6V!VRQ2 OS M7 A,>[M3B$D2V''58-!.H:LDASJN;'D+W?/ N*"\/,K+?W7HO4;V)\Z_1L\M M#8*[[OFN/@Y@FW?/S"PU(UH,:@N)X-RE/X],7M"NG1,J+2=#"YD&+2\AV $P9$_MI.1+[0&WAUL=[R?F$F1+[>AW@#S]G129I$ MI&S(KT%^S2G390>@H:BQ!2HP 5CNX"%X?),X[ 2)?H!\W#\FGRFHU9&;NRE4GDI;-H6ZFJ(DA]*Z]:.FH M,V[8S#-52PPS8^XF(H);I,],C%U>T#P9Q<&V3>R[U.GDJ*%UA;2 MMM:4&$O*U>?5#%.M7-L#:Q3U;C-+; 1I49ITJJ6&TR38)C!NYLUQ7AVJ7=HM;0Q=4IM<2EL[/@L]:ICV8!@\2=/''4/_:MF-?_L04U\4(C^^ M*0^_&_.H^<^N^+:S_0A^?RR8_H"GU<6!4N@OZYL_KXJ^EV;:V=.S$NS[CXM? M_<"HCUN6"/H!>[11.,3JDP@3L$)= DM@\+W/2YK':+6HZ[2\_ T%2G\/5%"^(">+(/ MGI\ ")< <*.ZNFS&'Y2]^I>.&7B)J:K&4!?[%P]/%K-G+=PI+%CN_19&PH\<\-"9["7DQ$2?3E47?#WAZIZ1 M<%Q[JIOJ0Z(3.5"MS"B9"(',/0^T,[&P775[7PA@.S']7=?XF:03D@4F!/!" MU4I O/>][2CIKA(L/#!!*>#E"I"7;()!C(NIJQX863"DN[;&([K]EF/[X EP MI..6^; EMJ*#>R?;-L@)1X86$)BR>[!!#XF"'8)VN,F=&+:]!V]Z:C+X &20 M@"H/H>?I95XBG(%.A/!A"\=4?35N76B[!ISS$B:8I+;:Y\] ?VPP=^L6E-E3 MAR90&H_%?/^@K+^;H:F6ZL;?]X+Q7 4C!=08()H)BSO&X#;L,?AVZR'9)GZN(E$W;@/LI_ M(4>)E>Q&"7V: '\$[]F-5GS1 U:K3X'B6#YX_13,\W$;+56S_6T;@;NA0FO< M60!\B6X%\G:./E_=6#BU'&F85\*#<]C_&\)X!L6Z#]!6^719W0LW_$JC^*E& M;+V/9QZ08@(3A([F[#\3W7. =_ SGH5>N1,$^T#2+[TM$GL@X*4_.EIY[) M:><-I: _\G/[K<=+<;SV>&W/=_WQZJE/'B*!/S"O!IC9&]V3K#*2OT?BOW)B MYL*H[W\ZMG)(O\_LQW7B^0[,O##X@X[!DZW(AUU,FB$5_%F>XCC+>CUXAT9% MCH/)D'!$C[/6=FYG*$8V,((L1T?-4P^[H'*N!._?>[LL3PRG9 M*]U(S1Q][@RX%,[ ._?>[BG6JM9*:T.L//0'LM-DA$X5%GW:>WN[H4NY$:U, M#&$Z;O856IV/Q[! Y-[;75&9D\VA4\'J5+-#1YE.O>'#._?>[@S2?IC.JV()O4WIV:U*T-NO--!F," MTBT7ZA$MB: MV2BOIZD,3 /NW5D*K7Y%MNNZM&CVL6K%[/(B">_T)AX6'U*\Z#.KYW-@?&4$!8Y7T?#Z5A_#.O=?[]K I=]9, MA+4WU-JLSY3&%GSH?I\F8Y87>I$@&&J66F8SW*CE9*"AX,SK6^L*SM!M?-%2ER8UH*2667*>^$AHZ*U)C%=6%C3(*;, MS.IG\[[=A.:W)RF5P/KA&!^OI5YOTK*+ Q^?+^+J;'N=LHT-R?;RC:(H^.UY M"UO7A&$=UF?<[Y2?*YE&J6@#'4G[*YULZ65>BF_=ZU0XEIMU&Y_)F)JRE^.Z M-C!R*G_(5I<#8861(;O VM4\U5@O=*)KA(=L==-AF5ZXQ <2DZVR&%=1J0S? M/&2K1:O6&,P;QD#JY31YJ,X[6E7C#]EJ=B"ZM9R]M+!E=C'25VL\;%9NN#;IXVL6"INB'6DVP#XP_-4>6JRS * MB#HE>99I"]-1/ITZ/)\TH_1T0@4USR"(NM06LRNAHX>'L#]?I[/E[DH(C+;% M:?6.Z*_5C79(2Q85C"X556HA]J8EABS0H(<4U*>]9SJYO%'9D%+:Z*5Z.:;< M9/O-R4'L)UJYSF3#SM98GJ\9I.7)S6P&:M[^',495:K54PTCFJQZ[4&N3^:E M@YH7]'URRO6')4SM9L+^H)H19K6#FJ=WQ [N=J=3K$YF#+797$9<*3PT2U2R M\WFSAG5'8L]5RTINP"OS-C]*[]_95==$)UR,TU(JEZN5E>6H6B' :&+[MS)= MFEB%?=_'\LM,E2_($L$- .C_'OD7::>WU@(([-E: /A Z'BGQ YG73'?7-#3 M<-EL]V#EHI&7&M!5C ME],?CWKM3<1GY4D'8RJ$ #O'_] MO*GA_L#"QK89S._D_S::?;:.M8MEL;TXU';'L62&#// .S_X^<47,OXN0W]0]#C=Z/N9TLT3[?*8\\V __U6M4-)8UV M/_]R!P&'(\%?0?#X _OFU@TD^',)'GN'3@I)'F'-UQ(\PIIK"9YXP%@D^:NH M/,T@P7]>\,>01\&M5&\N(+[KUI^O[]SC$M0G5JO?._GX5K\_._>=>(WU[+(! MDH 7__<'\>.D<@*(29Q64-P1/)QF7%\;ZKRCF(\/D8 M;1R[^HNO?P1'SJT>Y -[6B[8OU6/K*K$YQ(NJ2'O36X7%\*A/I]R!KD@0P'W MH61P*\X,@O=M); C!+@O>#C-X.__W)/"F>>,"RO)WX@,IM/O3TGN226V\\1= MJ02>1I/&J3AK+Q%Y-.#.Z?/R*)W=$;P$C]+;N:=SG>H[6?O?2Q??VW$^WAO5 MI\]6=3] >M0H\M9$?,EZQ QM/+)JV!"3EUU2Y^M%VNU\GH#Q<69\_Q?N&&?[WAV"#7JO-XPS(H-!M%%] M2>S-"VG36+%=?@[WG#/G-,X[G">P\GI9F=3J:CM+ M\B,:^CLDFR0O3$-]'XX0LG/D.GVBE..^G;O]ZMR<-*J4I$H5;5CK:7TKE[^$X6;-P*FU^DE\4>[>>B3?4L,$O9V%HB*D,.Z]&5C1]A03=?AN>28?HH MG<3(XV 6V?.WL6?D('WQBV:C;%<$-.5T'*JP9 MK>G,S_;[)8PHSQV]*@!_RSS+ZIR0G[I5IF+61#5H2CV_2I2UGK:M%$UA29P^ MKF;''9G_S66K;M=(+I;-NET1W) S=P GYD9.JVE9ZO@!-WYL]=U6T[7%_Q<:Q1L'P\-M]E%9=# MGMB7+N/RVA5+4=P0LX.(,N0:&0VS='/0G9YEX[;/4DNB4+0JDC#7N$97[ZUF ME7!;WI# Z22.G:DX$K*_V[6_0Q[.][$_X.)DYEZIXP;%FI2JU-M18+\3+F=*# :D5?J7O\ MFS']^CY?([D*\N-*=C*5RF.RQ19Y,O+PYHGX&M^G9]Q2&(Y5TPX37K ?P=? M]N*R(?IONDT9]B"A@(!!LUU=]9([-L=ME9BX#@K08%E3X76@R9M8I@D'B-N> M@+N!(BNSN#8*N"J#KK@R1(@4W.Z>&,-JA5^/YW'[UBW-8WRH='=A2_,87[DP M%21!/6"(GLVY"F42@^C9KB%X[@$I/%+X;R5X'/$17D/PZ0<&L>(AJ/E6@D=R MOXY/@R/!(Z3Y3H)'4K^"U)D'YLV"ZTCP"&>^FN!1\(2"I^\D> 0U*'CZ5G)' MP=/UD ;-K2AX^BY21\'3E02//2"Y_X7<3U):X-V-!M^G.,U[#O;WD<0[2_'W M5J4'*H0'NM(4&2.R!N^Q)G7/4,SI[/0JD/']2GLM7MSE#M:.S%Z]XQV&Z M8?5!OLJ-(\F9*MM\>JQC%^2.(*$7?U(G_QV[B7__XK=;K+="J>A3];ZFE1LM M<_1X9.T*M=#^1C7RKNUY6Y$(LNM&H"T[+8DWYB/5.)5JI.^M !JO*,$B,.7? MN/'L2 ;2BU/I!1LG^.Y(+XJOCO-XR82E(J! >BX\D2%AY43Y^7&N4(*\@Q)DT]V_RHK&Y\^TO[(__3& M4?5,5)7GMBN8P,AC-JC'[\3J5 /JY.WHH+)T6R/:Z>E<:F?#5%97'5V>\R^X M%5*>JOR:%,(880UNG?_S" MF21&79K_[9O9^O?I['M[0L_!4I[X)T*#0VUZ%GD^CSD/X /&XOWF:)XOBX1' M<\5-K85/6TT@ 0[@ YED\?UBM_]" '&RWGZ?KKZWE1/Y#>=#BM<-J:F^N%;, M ,K_#5HV75,:LT9Q(TF"V>V3]8VLIGJP$#:.__A%)$F"0;X#BA.^59R $WL, MT"GP5Y61N&T.;9V/LG\/T9 M_MS>_[DGO5LR^GLV^:_IS]^)]7_2H;?Y<6V45YH5K,WQH+/#I6Q;T-X)##KT M'+$?[)]3A2Z\9_J,M2 NL0@I!!YXH>HFMH?F;,N;Z8YW<$7R!EVMCRX/GXNK M] LM(SXJ1.NY/NSPIIYFOCXJ6DN77X=E6%'6EWG;,6K20>I5- MNROFQ'RST1Q1<$419X]?4KQ!Q?U[=^'V O\_UX="0?[)DGIOF>>DY-0L;#FN M2>U-M,C6N;6']3]?VN03X?ZRW0U'N"AK1M#CV6R05KR\'@*+I7_\2N-)##LN MVD<&>R>K?-\WH/]*UGQ\:%]LR69NDA>K4L_KUI99?#B;U*!]<\#39Y(XP1T7 MV2,#OXM5.A2\WZ.E?S*,K[6=R805JY$4#1FE0["COMR M@W7Y1@JR;%GJL7] M%6T;>=M?(^7VEMF&OL/I;8L,1$):M!3.7*]3I?"2[O:0+P)=KC8:DEJUV&%& MJR[Z=0V:+(7\[9OSMT]FL5_(C?Y29GJ\'QV1;;*I:V%6['&,XXSH^="48L-E M@2--)4EZOS3AB1SI.U@)NS%'^F1V^S7]X_LSX4\ZR*K(\0&S+J?%NK46-*79 MZHD5:+1PG8MAD@S%GF.VO:_UK)L];5>S+="BA:/Z:D+67%5=J+!&)MILA$[: M?12J@"KM-(E_4J0=4G%*-IN>I'1%DJU^H^>'0V]6/]^9NV(]RQ?-4 T,8CHH MCX8Y0UT%VHB&*V0T.G-W]WMI_^QZH VUY\_9O6'GEI?O=PNK[$R,,D1*<[N# M=G%UT=C?ZW1\L0F#X\@I=,'QGY(\N_S7VU-]39+Y1M M^$*P<'RN(>UF4M&$GC1%@0Y!*WNV[!K01X!G\9+,L9D&A!2WN!GWAKKZ-;,; M]P89G\QMM,AZHUW69DM)WQ09=U+GJA4/>A/QH;PC$QL((E 8\:6,_T2IS3>L M?YR>%S(EL5Z2]+2RLE*3BN1M+AI'R.I4J(E^OBBVRCP\0\AQ/S]LSHX2U@] ?"1;C+R,>(@ \KY>DN7T$0,?U M[B9".#\ ?$W'_^ZPX).>/][HVMU&6;8DO=8BL[7N6&4L:/UP59,D+CO[W]=: MY[67-.O^3'71?J[OOAP9J\'KNW<8LV@L1Z:3S[6D5(?&]<9?XQ<]&2B2\TK0#C,-([6AA0"OI=OAL@F0@?[QBV!I MM$WY(QF#;X8*VPS##:'"K:]0W@84')^!"*>#W"S7I!U1GI*5G!EYG;H,P2$^ M5GAD^@&A0YQ,^&;8P%RZ3 ?R&"Z8G""42H.84'Q34FEA0K%+J>MD83P!ER5Q MY#6@8 (%$^?)6[Z%#;8[;DOI=;$BE7G#;RIS;6G+%UVT5++^8M&4[9X4^&VG MZM/-?(L+(2Y0*)Q X00*)[XB&!P?3_3#99L1_(8HREA=&]7*'.&D8#P1'Z\D M]W@ MYZT^=:S2^S&NJ=E3T+'.R5V..N*^>:"GH;+9KN7/]]QR<9TE"XY M#K<4Z_,*P2V+:W\8-D=L3"C*H/.2E]CH_')F)<',.K$#6+3V(O[$!8J37+R# MU_8=?IMSBN*&F!U$E"'7R&B8I9N#[O2BRXR<; 8ROUCG):'@:+5Z>N#[ QY8 M.#P5B:63Q)%)0V3AG][._(4-_%#FX+H&?HF5R,M9]?$1_D#(2/VE8=H8,%)UEZW\S1J<93[EG^PE9^* . IO&+K_T9HMW=R*'7$%-E M*EATNT5%P*&)QWRD;)(ZL#$ F3ARUI&S?F2BSU_F:+LB*GE1YW(3)C=2QZQ\ M46^=YW3'RTY90LS/C2(8SVQ/WL!X/#Y[B-QUY*XC=_V6[?IX?WV6S2UUK2:H M6#"=399]3^1+FW@R9W_\(M-)DD,U 9'#CASVVS#Y3WKL68/4F'6'3!M1F;;3 MFV)QDUV%,+T."5+328Y(H].$SQ;>_NW+0,2_]E8EFM%#XO1+FR\ET59FZB0P57OZAIN5"_S 59\+3=Q:4@?B1P#L02N7F(:MRP;JJAOK(G;1M,85NH@3YZ=1 MNW8?L8<[4=1CMI7%@':CV,.!/\:?GE>4/E$$_U:_;P^B3B$)T&]X\7]_ )?B ME%+!J0?\M $>=\1>M[=*CC^Y2'^J.GZ2?I\:!K@]7?AH675D[\C>OZ.]_P[4 MD,$C@T<&_^4-_GD.!IG\ITW^@J>K/M;QG.UN^^[/U.TO W@F8/NK:,&6)+*J M$A]HVEXD\>0A:=TZ/GQ&'_9_[O7YS$AP8;WYJU!@FP]%(/&I\V27< WBO/\_ M774AZQ:T:_#C<8W@K#L/+CW77W?GP052CV?=6W"FO.*U]PY<97?__@)6*[8^ M@.GU:4Z'JWYPNCU4I, UTU$^5V)%U2\M-5'$&,^!),7DCU],DJ*..[=[NGT% M-VO 'V0IOA#.XG>X3/,E%V;N>2D&068,F1 A.Z%]Z,"$T,].UFQD8'FUC=GG88A=O"#@"I7IA- MZ$W@341!\I5F*-:6&P;N8]UZF_C^5G7D;=Z0MTDB;_,&81&AWXVA7\X.#H7: M_93(KNMFOH8MFJ;7:!=S5+VCC3@(?G22YG#D1=ZR%TDA+Q)YD0A'+XFCX-Y# M%,6#U893[51'DNV:/!0Y%>JJ\M0_276U^P#- M3V'C5:EA3^UJ?C?*UQN!4!Z:V1LXVIOG':9$4**X:$YIGZ?2^F"HC7 , BG) M)&GVN'#\2P/FS7JD-^7.W0,.G]9Y_<*'_@^B]C1T]:VJ9:-'J% M90-O-_4*B35'.!YG2R]/TW7KP/W\T/_S$ZZWQD<ZU%OI?/"JJ]24KE6)DN-6]G M/LK/*PI +]]KR!&T<-Z:@"MNH$XJNAQKO*YZ6=U33-L+W->G]COCT7@M;2:9 MC#,T!#ZU%M*]H>OWPM>G\$]BD&]MZZS9OII@H4GBQ'\>^Y38=2KF2=AU*_&L M7T^[0&_E!/Y9N$S\0ZP1C]O!=UCJLO?@K@/;"9/=V?"8$'YF75?64&V4#M MV.U@K.QNM=W#_!X%OYI3BIHREO*I@& =3$[E2R%D 7S8)PTZ*Q7*9\B5KB&Q M<&C5?$UT,2WT0\D!C^0/Y18J_Y3;9)E,Y,]=3?*AD"3?7MA/>B M#8F9O%(38U6UH!;+P&(G"1# QTSF:FGX&+"[&\U*?[4\(A#A.P!?S.-@B2/L.9K"1Y_X)#@KR)XY-?\G>1/_RMBDH/M/OST+P M;4OB;$?P\0?ZIK@XXES<94D8D%XF$5M@O"N5P-/GX7.Y!% VY,BU33->>(A=?7624!>.:4PU*GN>XGS[KFZK(-P[>I1;R?G;GX#V7LY+K0_[,4BEKBSI=;6MIXM80F! MZP*L.; Y3$RIUF:A&@(FU$O-LE"LT#E?@VW\\8NEDAAV6>*6[V:@;V>T;MY MSS-I7-M SU>VZ3,6&I)M/JQ.RUFIOJP65<8G25EN @ME?OQBJ"2+O56 \8-' M=R[A!>QZFK =%2[<6UK"5&5/?5JNCDYR^.4>8.3VIO,K= K-\1]"D/JCU52@ MT3P"2/1G^/ RV>ZXM,E*1GXD;8KU;E^HSN V4CC!IY,T>=PQ1V2 %YFNK] I M-(>?V0+S6+[B"Z4&(RT'3%J==K!J9JX!"V2V+C;YUO&X>XKO!=D+9-./$KKE M!6Z\E]!5/=5=P>W'*&:XFZ#^ IP':-;_$.;L-J46'^WJSV!#5U+Y;-K)545& MG&7DC*B1TD#;\K"FDVGLLJ0&W\TTS^X?7, TD3]P+MMLRD6A.FG7:6/AZ%&@ M;_Q.H0UMDXEM$W\KU7:+@;SM.C9PA>+3,_9"3?CR&GP;9O=M?Z:ZN\\HFKC! MB1S-UV>=KSM0\W>GA?Z,!PRC$!ZW5C+2HN-;T^4@UU K.SI@)LD1*#*_BYD7 M3;#GG6"/,R:[MUZE5HMU"A/LV1PGH[DL3ZW(:3]M M/'VC/%DGCK<1@=:ILO#0"/=/BOX9G6I2G;,$+SKQ.#5J!(= ^(>N< MV%4J.\YW/$TDF2,+K"&#/.P.W*5!'IKQOX%!GCV5?Y1%5C*<)>?&DRJF>QE- MZ(SL8M>&%@EF>YPCDS3V5AV&/:+!X0ZVW0#&Y/T3X[#*R8JNQ"VYC] M9Z)[CBE'/V,Q/A+ [.R 8!](&C8 7-J=22:Q!P)>>GEB^-FC7SPOI:BF^6:V MY^_.'/_Q& A!_;:AG1U!S_'UN6+X\__^GQ?'I/ MPHZ)U'_*9BA'WB/U\'-P^?D$(B1L5/J!PO^1^/TK%,+>."WD=>J9G%Z0\6R_ M]9*.9W?MG:/@NT'V;>!#(WR/Q7SDQ;$5^V9A'#: 9 M4L&?!:#'6=;KP3LT*E<"A)L 1]2(5S2P,JU0JJQ0(Y6CTB.*D;&13*KD**VH M#$:R,I/&IS]^O:0#;4XRTMPH%'BL[$HX/7:DQ;)]D 96PQ?]]:+L%T2A9&2, M)MT2:T;S$ VL*Z663G;)%3"FDHJR3&59(_(':6 'X=28;39E4XI"NMZFV5XE M.SA( PM\?F;H%P=C0UWS6:-@N79;:QZB@6T9[5FUB>4X*=4P2W8J/Q=R^? 0 M#:PT6(O,8JP)HJI%[GH>96V-XP_1P$K=#MQE+BKK+;FH\+;JCBG:0!C:E MKM*XT(V,'M%=+R<=<\#P_':G[\L[%X49W6T'J0F6:M0VA4X1[RZDYG9'XLL[ MG0:ICRM]JR-%G;2KKMVV.\?X0]2RH(F-ME3N5<1 8OAQ-!5[C4QXB%K6F&<* M030-4UA^'N:'V6[.%CWM$+7L>!QF*'PSJXN]M29;4KXFI D>^%A[=ZHCFNIK M9F\CRK7(J:ZUGCB5FZ/T_IW5IM?C!)H=B[WI(FM$F+9)B3RX M.<0"IY);%HL=,R/!9^Z-$9&NJ8,\$]7$,LV+F0Q.-/)>""L@[*M(@VK7%DZV M)O56M,F*5%Y731Z2<>_?BCLVK[N=*59>I5F6)-O\8A#S=N\UM<\*EBSZPQ3& M%%:-NI%K#4=8"&^]$+5N5AW[;U'G6C.]0?::M8JDUT=JH:Z56*G?O YU+K>C MSA5<=:+["=YU94M3%]O9='>V]F)TDU!P132QY:,7_)>TEL1#^DW^$$3_=#:J.2*-!'\5P2-6RVO(G7U@ M621XI/!([DCN"&B^HN"1PM\ D^A[#OU9^O[X& &T:.SJ+[[^$9&X$YI .7D$Q;MLY[M.:RL<2UBYC?-VF@^]P@^WLU>K?>/((KJ' !%:XV M=R)'Y=>Z]^R/LO5XOK8:>] C8S3BQ-EPHAM$*[\)J$ZG3D7:I_?5PM=W=J\_ ML)66JC;2C$1-RU+>[)9JM4@P&^R.@Y; L"1+7[9 ^86=>F3!R(+_O,7]LR9, M9O-#HZ$I0W%I:E@QGU/SN53S7"8\=$IBI9(NK+"R:80FS:B-Z4+;DM0"14[2 M&#+A3Y[TNX!CU%)7MKF*ZP2_V%=S&BK>>_"';D&]W@"=JW3RZM"ZVZ=WJ^.% M=!#IX+7'ZVQ3TLT&\8*]6*BNHLMF0ET&N@.WS28LVS\WQ^P]S&+?P'M"$<1) M.79MZZ6;NYP<1$U79]3=;4/SMX M7]*/^XQ.W2[QU\F84[3\7;P6U#,MASUQ(&1GQ>(L%\+M?[B M\_#[3AZXPVZ&-#ORBN+"6R^&^2B%88WFEM*82B M6S6QJ=:;FY2QD'K%5J$\&58+7O]L"[1YWJP1 Z="&_K(J T4LN@3S>:66YDB MDQ3[W:SZGA)F'=N7S?CD-$J0W;07?_;<.PJ'K\+S^,&(=<@,%[C59SEIV5_[ M/4<..,8+MU31)$#;-$ZBB/6N.HL,^U9\K1/S17[0LN<=LET<&Z,&UJM7';H\ M7 192=L21),TD<2X2Q=;OUG+OL%6EA1S5"J10QX.#FSF158=YVK9K!ZI9JCVK.1 M@[4@F^TN682S: _4'7<66>(->2_OG6+LB$+(]R+%*$LDELVD6A'1AJ889W?P M)/EF09![U,ZOE-VIJ)[W,Z%LR[TD'.BE HU$29W[" F_S>:$.\S;/(?-/Y=3 MZJP7-6)JY@0CE1()60F9=M9M0@I]X,G01)(B]P^0?O%H#UDGLL[+>C5_-D^% MJBLI16E4#('P2X(F5.BPQD/S!-X-32<9>C_.^.+F>4_)F)<5%.*$#*R3<(R[ M@Y(TGW:^;[#$Y&ECQV]7>O(B3E+-MI0_ K$0S JU(C;P177*>_E:,>H;G;C2 M#R3+26-)ED(9'V36R*QOS[MZTZZG1F6:J4Z+';&LB-40D\NM 1_7!8,,.FG@ M85$$LNNS%<\]?66G<[2C,U,36TI&=9*0P8#"HW$ZY'94/3_ARKZ: ";A/ZV\ M)>S ]Z!)0&H?V4]4(7-V@L23"3B'Q86T'DF3=U?Q="*4O6.MS E<=33>R$1G MD&]I&#.K8*,BQS5YC/_;V?.CV_!Z.['P6ZD4=T)I 9D\65N*V)I;37;=T:BD MI@F78L=BWI1'+%';>%I;^_&+?-B?/_\1B^H\0OD0]IQ=*INIQK9Q7ZQ)"U.I M.?79LC]PFS]^40_[Z9=_)!/@88ZJP$(+9O1P4X75SMZ.[3?A[S]U8&^Z3$_[O0$3WG9$K:0 M:DO*SA2'Y2+ -B#H W:< "-N0EGZC_RX\9A=5=A;SH$7UWNZ/VNX^@KH44:V M#/BO/NT!Q>*M23$CMHI\AJ^5!=MU[&V%SMW@''6^[HD![Y74MX_(%V;S?B%% MX5)=WQLWJ,Y)A/A#$PAXRBNL6E""W>]K3E/@..16,B&&JN0!ST1^=DKQS(P MX\34M1<)'V +O#G^/U0U\#O<3 T?Z/OP@3 WM6NB[28")[X;O/ ;:60E%L6C MFNR^.?6).FFR:M>(Z#R?GU;%'*6&UU/$B>N7Z\[,'$H]8RCBGEVI\??S8 MVH2R:RZ\[*H!U,\$T-93*\X[58 OHTYPA%+B,=6:EE(B\*HST<>U ;;H M9\/V@BS+?R[IT8 =DJ!&272<=A#/B3XUY%0H%?:H'5&6NP(C,LO?UZ'E@ M^V3\7F)K[U +_CB3)6,UVC$([L\WSQ\W R\.F%T]SJS$:CS=EQV<7 M=VE$%[*INNIN=BU:3Y-Q\@^SZJ-?]M14>^OTZ]8*7(F? [!V)EM:/#7#+KJV MF7!<&TH?W@P;\^RC;L5O4E?P\:&:F.B>8WOQEQ>V"QT],("G3L*]X\AYKC]J MP2[$!@L_58$- /_X%:Z>&;U7>8Z9!!M"TG'?E:)J%%'&"RY_XE@_[]61Y9TR MM9Z-8=TJ_AY!(1X_ 7;T6L\C1;O 0<1UA62X9_CPQZ\YZF^U[$S:G8[$KV=MZ;' MT81CZO%)W! (.%:BWU8" \B#"KR7#[\0]AR1.+RO'*=LR1,@_E>.E@[Y^OZV MK2:8AU*/A8#O!^.!F-A,8BQ(6*2JS M]DL45\R>W/%X'$F(2SODF93P65T>JW.,&;96Z^ZRD:/)*V8VYUF]LLIEYHXA MI\A>7<3:VH8+#Z]//*4; $8\*>G$-DT9>/PQ4LB_KX]!G^-A 3,'Q*XX)H!) MJ=AA?"MB>'RZ_+#=V'@@NCQ/Q'%5Q?A\0.'C@W#A#7)#21A/,S6Z.AL'Y(4# MBBFND]TPFVU@B]Q,Z++I7L;N S7"'I@/J=$VQH@S4Z>*,[ZZN7\PC*B4"\RF M+%B8*/3$K.][$,O"]*V*&E3F"2R]-!*]SHS]APX$FQOKSC MV'S]0.GW)'J3L^=.OU[^7=#'RLZ4K'%-(-L#NVJDN%)/7I'I27KUIYZNV>(.R>\(?UIQ,E;^]'*SZ35'T^[",E[)891:M*]5%S M:=KI5,YU/IM4?6>03IQQNY]!.OLLF).;,R['KSNB/EK,5ERYGS'$SQCO=MWD MG7%\/B,JK@VL=*).Y<#T#\^'\8IP'.ML;]KJ"YP,]V+N$+0,/,0!SXE#\*?O M['#BG89M)[U;W?$GQ^,UBE73\MMJ/!HC@ILH\C0]&='3<7I$*30VXFB,&8%W M_%O^]=\7??E(9HK0\4Z)'/WWD]J@\%,%Y/\-+P*M") M DB/]>PN&3:BXG[_+FH-"&H#$JM>UJ<.9[VL2^?U=8 /59.6OU6=N%*Z<*Y; MJ _/N &_A @ *]W5;,ZR&22,:3=$PH2)AB9ARD<+XNR#JUP9F< X*+R@$<+L M0K5&X"#62.P7_$[A8D _"8HT18=U&)@- MK;!#76,'46TD?>FK,ZZ#W?5##UP"VHF^A56$WZN$K-\D]FIE0W6<@9D99YZJ M+S/=J7/]_H<\U:_Q@[70RI>R[U$MB)L8,Z0N6.X;M-+$9YPUS(8I@8*P$E/T MAICJ-+5$._ZX[#?K\V8ZWRK* X6I BWJZ("ZX?IU7X$]8)8#:$4__VMS^?LI)5X>T ;(/%"P)%.DC]'71-(H)/7P^W]+VEQ:6M[F8DR8B?DY M1K]7N40<+"H>YIG_4.L_"8[OGM-86H0VX.3EI80TU+-_NT_Y7Y%<(O\[PR*W MF;^)-,+,9N>(O$.VCU^QP0! (P VNI0F)8X))N>KK^O)&VEZ,CP$1@9.9C6S^C1R= M(Y2U>WB'3L73HUE>H.D(SXBQGJR(^$-/E*+=F$@S0H_F&4G@%=E3HB4_BRK- MA6HO\J+$C]IT79@*]_?#U""!Y26_.W(R%QLQN"8?E=-QV9C21EF8SO'(Z.Y( M; K&&^46QV9RA7QQ)EFU7H5)B*S([HX<+R/B '4F@Y$4:T@V'B8),1BY]_;' MWL1P'&68IY>Z4 _%9XV7^^XQEUZ*%AZ'E4GK^7XV;$!C=7IW MI"T\\8S>T9KX[<5*B=$F+Z5N H_<6Z?VT'Z2M5*[W'1DH3,1;+[>5ZHBOS\G M2X_8[**?RXS:K9*S'-9F@\%@CD?N[A%!%$0NH+(2ZR$SS=.BU&$%"G&\PKBI-VY&YV>GFE,T_5,6Q ?1UID MFN_/JH=.58_DDX7QT\.\67X1M/OGX5+D4_U#9S5K9V:CZ0L[I N%;FT1*Z.Q M$NL?.JMR^XDI,NFF0M>?'A*#QN2E6E@TKGYG)=>Q.0B\33' M(_?F5.U^G0_5K')SJK?;1EPR,*NIXI%[Y[\LUH3YU)X6,O5E6YDWIEEIR28. MG=7SO/%2U0J+9@;-8[5"Q$@9W1FNA4 MIX7F8RW+.RH]G=#IQ#/7R#QBBVY]JEBH>E8@$=O'+4;/$CR)ZK2M:KA5#;!= M0 0>UEN(5B_M: >4-9+UU-+'=_#>&(_EO,>]F$!Y5(1X63 4W)-6- M508>>9Z8L;C(<) (%EMYL Y9[Z"M;5VR;29UU?$&/2<6UKV']TQ)YDV2@IO[YJYSU4HJJ%X5=\@!SY)ZM$*NJH[$V&V;:V67"R:3']\79'/2.X]'! M6.4_6Z#/&LS8?CHQS'.17*X$+O82E&&C@63*L9,#9)M%-U*F8JBZK M$TFK2$MB<)=U.$$XP,/H4AN-I6;]N3)IEF=\@R]4YT:U,3^.+EY,(3A@O+=1 M$^]UV.93W&QE/&Z%.^[QDW-&O9Z?6;HR]V#L-N-?F8BNQ8J/TY_31=4NUG$] M@Q(+A)ZZ %>1ZW""-_4DU<0S:@YR;<4U8A\0'&M'A87?J\-*EA3@MMK#EIQN MXX42XW2"QQG$=/;^4M $N;-Z:W-#V0Y@^=Y[MA*X(0YTQT3V'&,[1C!<'$NF M:[[#^W9^=L'@Y7#!*S$T$B0D9?=F[6"&N'O1_0:PI-W85B#_R\G2_=N@KU!F M?=JJC6C6*6;JC=)<2I0?^B_#SX>L?$Z6VE,SEHH^/C+-D-Y9C,;Q5I/I@"R- M'(U:@2,\#XP/]##\"I UU$RRZ9@QR:@J)T33HRF?:GW^UNUS0&;Z:C[2K4XK MF7&J]Y+N&B7YI047;1'V")"W$^'O_."RO?0DDH;$T%X>4N"\_)3STO,@;GDM MDTL* @KZKSF3,1]$&(&-,;C<\!FX.H@O,JRC5Q/$KMB]YP $0B9FLG!;ZB[( M]?VGUA\@\H8(Z,[UR:@]=<.'@LY8A)Z M4LJ FP3=DKQL!4*G XQ;9%[U;1I5^K()DKK2L9A"*Z2,2C" MWG3)$W3 X+ (Q8S&M+"0M0Q9=2UE/_ E7T\G5L4.$ALSNF>"T14K-W *_EO] M7 H M(EE,]XV5H>\BRZW+,%.+@5^PK]G!WBHY!:+',*W\J S7WW794SECD;, M)!\WW!2%A)W%2-P"'"9NS_T;[^;3,-(OQ%&(GG:FSU&C78D9E?F)[K#?S@_J M&7#J<-CDQH"RG#$>@R>P#I#@SAV:CQM^?A!!6C<#PH!W @?#?Y$:J<0H2TH: M"3&L#Q"&#?47&6TX%L8GZ^_?Y*2\57BW 6YU,!D"2B86^NW_L;E-85TPRG7, M;U20\MSR])Y+W3;]5_@1_RYJO:](.,>&F6,%JS;\T1O30_83F \^HOJ?R17W M;_<2 ^Y'W[P_\&Z'R(O]H5(70]FQT8FO#@YG:9"!^,?W%M+:O/+Y8HE6_FBE ML #PYP*\$(X+ >0#E/]S ,^$A0#COP7P?#ARM$AU /F U_PLP >\)N U?QKD MPVPD /SG ?^>EA"28QL?K<7\EFU[I476/[/5M\3=B6,BWY%(X :X[?^[RATX M"QC>LNT^#(?838+AU-AP,2C@/0.AD#O[4T*$$4CX[!6!A-P9NU#@F+L *0*D MP#_Z00.7Q(NWM)?O$AW;F_ZJCO M"L%GT]EN@OS?=H$J/,I MU&'B@1YRLO:5%U!%\GOAI>=M?'4.RK_:CG8G=S3L;[=, HZT50]2S0O()"4B M@X,\S6[=ZXI+-T.^6FBX=PA7U!OZPOU)_6!K3_\FFK>O) B\9*8VLH MTJO^1*.T0Z>>YV?G2/G1XZSF//3[H[8ZKN6E06-1M""=/_;K7^&.Y[F+,J3S M6"HG;/*Z;9]N[$2U>^?"7W\E5Q' U'@_#YR;<$<<>/QH(%@#\3X#DV'&3J? _& M!PC_39R&#P#_'8#GPDQ0["!@-7\2W -6\SV CX2C >"_)_TXP/@O /XD>19O M6K$_.='B+4/RSTJT>,NZ^[.@\88>=/W 6,7#1TX;#\_QX=.ZOK\:[MX8F A1 MC_B'@45E=*@'=^;H]^-RZZHX9B D B%QU4+BJ]3O!]BY&2!&CX+["O=#;76! M&Y3\%Q=A117XMP0W_!E47HS M:#:0/]^>QQL)T[ GYJS+G],C-1(H)O"D?.GNM]8J7D-$AR\E3O3X?Y MW%SZ]WGTBJT-^6=TODU\B[-R=4YH,8' OO.>TC=+]>_.K3Q^'7JNL.^3K?^M M (9;"_=^(]ST%!F+ZY]E8XQ6$:<'4RC7+2 ))7HSM(;#YWK32.H9-1UZ=!H5 M>U*?GB3GT;"LLK[^?" .O=J;()"T>>!-'>30B)W/+??13!@ M'P'[^&10PHUS#R:^P3U.U%WOZ]QCQDTZ W-4&M'JO)/,]!+)=#ERDAH.;W./ M@V+Y9UG##^Z#)/NOF2 $FU.S(S"E,A4WXPK30KB/>5 MP1Q+1WIW9.?!$G*EEX9#IW)RKM!\+F8[7 */W'M[NBS(2W/ 94:A9D,TLL(] M6XW"2&YW)%VRV.%CYP6#@*LF4YUX-2HEYFX%H>V1+Z;Q,*O()6%48&8/S:&5 MISFBX&ZO4^0B?)R/TX+(*DI7Y"7$BC&%5T2EQ](*'^L)O9CR\2=V]OB^9[B= M9UB$I2$>SO%L3^011XLQGE7$+A<5>JP0B7.1W;V\XXF]E;WG&7]E9\[O>U1U M QKT^@I/6K5DC;2$/9"QEZYWT_>8;D:241#,[N@YGZ][7>(QQT=*PCXR3H1A MS(D:2+[?&U@R;$0Q- 4,@6'_H:"J#AYE&IJV:E6*][V^@?G<@H@8]J-0OU&$ M'>^LV89&M#HEO5=[GV \$+LO$MMXSM7ZM# HTF(^%JLFZ,3QN@N6:8OEN8Y, M:Z!.B&8],=6QF)),S>I*"J2[XO.7;<.T'@Q5MUMXO?A=?K/Q01UUBB5K20M: MK>[(P[;0XK<2Q=D/J-F[*+Y:5P698*5*?91<5B0HM+32NT/L1D=LA7/8SOVB MI32GJ#+LSCG;++?[V&BG]W3N_ZP[)_LYOMZ6J2'LDYJY&_5:V[J:U+I9;<68 M(Q/K87TP3,(4Y")O/S; ZE@7(6CV"W4D24]YV\!?X3-MY3.D ^XQLI /1LI\67?$$JL[*!RKR69*D!HY4+ PA%^ MR7N]B//Z9K+_CC/BE6;,_%,R&9&3N1[=UNGN9*2SRUSH+,QPNAG MG.=310O%6[. ?//NN@;1R)?+&I!YA$B0T/T]F?3A>- \#L SX:Y> #X[\CVH\-T MD-$=\)H_"/ !KPEXS1\&>39,![SF"X _5W_=MQ3]4T/#NWVF(P(G,_]L39K" M*^Z:ZM9D_.1 W#BQVQ0D&ZYU^!M# )G@B/W6_+BG"^7 M]F/AZ&T%3Q_('+YXTM=;'/,L?.J4Z'.21*]+\Z=M'/I)_.1CS2N_/^."#?/, M33&-LV?E!"AQ>RAQYB2;HK7H#SU] ,Z:W3U6XZ- MJX^N?LL_OTY#*E299%@E1@FG*/_++\<+!1 M=]IP$MUR--(4GJ2G1VXF+ ?ISW>E\&1)UC3&*8@SP\!JJ_8@Y5CX>)&96< % M.(0,6!;"_Z\TI,6!:/^T:"CF8_Z1'Z%LW:XJH\@D]0+AF<*O?_D[FKUTU\;+ MFJ#G:9)V*6VBA&P_2$>R;5/M.FXX@&U0^G;PH;H./OQRPY';X.;7Q[2_H:/1 M#^?DKV5^GIV35WKW>GNIUG)TW9[%^K7'\E3/?)Z38SIVH[,@.RNQ0X4 M;*#',:$,R@CCIII*2-RHE^27;6 #6)V+Q^+G:09XY3K;C\C0_&SL+#66%(BH MIA351\0JYMZX > 0ZBYY70MS!!L5=*T)5[ >*(A&T$\KM&C MTD@FI.=-Q,3(1/#*N62:^*DE-<&':RA0%T4UW7R'U4/PYG7ZZ"8JN/?>&]?W MLH8D$U!_\(^? 4NPR ^5]7S!;#3,1> P\%=>% %'AUGX:ON.?V/JK?E",M*T MHU[)KT4)O.I+9ODUB_;8-!/=CP2 ?__[O[8"&_9,/<\+O@$R#Q0L809]%'+C M)J0>?O]O29M+2\O;7(P),S'?P?Y[Y4GG8%%Q\+U3ZS\!"'OG-)86H0TX;84M MNT]M!RY[W[T1O.$=LFU,?K-,6-@Y8&'O=+_*2<@A<.N3^#^)PA2$)=W_- SY MV*WI6Z]P/\*#&-VQ&-*V8AN\KS9P!. &[(28D9C>P+$ P?$K_B4="ZY8N^=W MXTH.4];NX1TZ%2^3,19G>:4;5\0N1C61YV56C-%17HPB&K(OF2@O[^72-K&P M3=2GU=#(83H5A)Q9 M>\JFZ'IZI%5B7GU6$TE>BL\/Y>=RV514S#TPJ6;=XIB&D*WT)?I@?FZIX,AS85 = M-QU1ZS1;SP^.34;NO5T=].,O=+P>&X4635,O5MO]2>Y@UFTG[Z0:LR2OC-IZ M>_#LY!VZ"(P4=D<.1,M\& O%1UI- MMV;S7.4I5)G-Q>C^G//"6*9S2J?2'+^\3 HE\6G\,*CBD7OK?&"'3TFGTHW2 M[7@YW]>>M&6HFA!C^W/2N6&MV2S6,IF"ELSFV$HRSJ82(D/O#WT8S,8/B6*[ MDU&+(3/*Y<>Q1JXJ,LS^4/:^V$U/T S10JL6,Y][]706S6'H'I),Y$RKDDOQ MW$A(-,:#<2UI]_-DZ!Z69$*M?K2U[,Z:.4<99SO:0BE,YM"==V\!4F.1SN1* MQ>=,^7$XZ77M6OD1DMW9?5@M.'J9S\P?7T:H72Y/Q^7$XR,F&>8 ZAZP&4;MF/PUYU MJ?6:J5!YT=+DG*)5\- UINY4I#B>R^SE*%]/(M'9U_&I.)?+9-=AA=9<8AVA M)6D._I@@&8T)7=GH]OS1;+M59]IU@MEK&7>8E7-=9L%GRO;SJ*\5=6ST)2Z6 MR!@@R/KVNQ)"8^;H]<.=E'JO6>W/QDMY;ZO 6ZVZE MVKMKD#>''EY0D*BWMKX/)>K%XJ=)U(L$??D^$*IWPHAVX6B[FP#P04/$'P9X M.BP$6<'?Q&N"CO+?PVLB0=K2MP">"\3K=Z$\%Z#\%P!_QDR]XYK^CTV%>4O3 MOJJ-GS'YX<3'_]7D!G(%[UXQ>!?Q9TYU.*X#77T^W'E;&#'7A1R;KJ0SMZ$Y M+JZNASF<*A_R#&S@O>?Z>N;USB\[E]&__DW8!S-HSYXS=W+9<7LY7, M)5SW\6W)DEO#BLA&H$> %><2)5>53'EVXP%:#)PW&^6R9D#0J.:+>6O'G<6W M%N:\6^KZ8G'-A64ZFVJGK9=F:C'I%1=X[O2P^NFX9B#3 Z'*;;U4+3U/6O5, M+F*.^%I33K-ZU6T,P-[1[&7[S%S:V/MN6C_N9;YZ6G_+67OKM![B8QW:<);\ M2"IQRTXZ4GUN]3Z?6O *"2Y;1J;X,EKV,E(QDEQ4BLDX5ZRZR9]Q[HZ/7C;[ M\]*6]7FS/\^N_B1DV8U[,9&,U!F(A).D<]R"TG-]NLVWY'5]L\)SI';$CQ2_ MUR=EOV%3@>C]8)D&GSE;)62G''.K_:=-FTM5*JGZV-AGTW M8<^1O7=C,O=Z?1&&6X+#ZX<2N"5NR"UQ3;N]9ID>V-I7:FM?TVX# M]>!CEKFQ7[J))* <51:Z@VRIWX]WV5!2X2O^.B^QWC M LO]:BSWM(/94%3X;LLE)B[L?-0JZ;S]?9W.!QW!<%N+[@H^^[O/B1>M./5(]N3@LZ MG6ONQF3[U7H(5N[ZB;1\S5 M@6@\%2KFVHG0*!>JY_EXOBQ4)2A2(_SZEXW$[N+"^ZX0 J_ ]UXA:.NZ(X%C MX)9%_LU)]L Q\&XGK5\<:/DZ/^:%9?>EKK=3(\&,6;-HUNZUZ;D8(RX"[GVQ M53]2;_J1ZE&@!5W\HN0=-)B<:@_*>)ZW\"KZT:5@+K1L#HKL"5#P5+B+\=$@ MK.)ZG2979+;P>5![Y$[?8T&S&*&3F746-91DX/P)-GQ0?.#: M!.V?8*C?N/1];_4!L_28'PUFLPQ=;_:?+;O =OJ#*BP,R@_0_%V<88)[\BMV M21A!^8%;]4Y5&MS7M-M 0;A$_0&]Q4@N%%H\MN*C MME0+/0Z:R^[S,@&-JSG,?V-!9L&/4HX"'>B\.M"[R],$ M/182PW+5E,KY[EQD(B1=DXT$02&!CRKP45V+C^H=!+W(=Y=:P6 6=+N:CT9? MK%9)C26 H"'$),[> M_7N]BA ABECA3>J(B9*V*2T,3*^$(6"]2C&1NU6:#(Q+)XO MC!(B*]*[(Y];NI-HWULV/=9RN3[J-%N57A^/W)MST1'X;Q9I)JSE949AIXKX^GHO\_LA<2BG)CDA7:8=_&D[0O;B8 M+A-B9']D@K'YSB,J2!F'&84F+^:D7L9[%U8CMU!ZBWVE'3=M"0/*2UUO&!MY M[*S*-!ZBG4$KDZN.([WYM%IOYQ)[M2-52]8,"RLUY5[*&$^0;I%):]!T'&$- MR+*M^D R45*RD((MS3%F6E8#KR&I&?+(8UI=L9M6:XFI0 MZ_^B$&9O$_P^K$:A$[&*8ZT!2X:-*(;Q;N/J-EYBB*RA7]Z7JR)RI,EY#RC G7I([<>KOPY32X10"\,!M<1%CG9% MOV7:8D.U-4P&>5U19ZKB2!JQ"."7S +)#FRRW,-6 S(] \"W-!)SO)C&,_N;.DJ^E/V DK(F[DT*29CX(/H(B#VYW*-_LE]_F6 A$:90 MQKAC-@:27I[ %%8.SM+*ZQ7,N0QEI>C0+L\H2:8I"JU<6DG5I=3(B2;BU@L= M?7&>$[_^%>CH'2<B;B 23XR7+ \HH#Q50?!.2J)F>+E8F<+@&2#%T1"A2!/A M=^%)/8D)O[LK@HE@O; >?XW>8MQMXJ.B+*<[Q$1%]H%-616O7\*JGX9<$L ; MQ)2KZMX'6<*HIFDN=>,EK4%!88KT%DLV!2]ULV>7L*(#>PQ3YV9KU\)>_3[= M%,?<42!P[_!9VH8M:7 \I^=?K]6DNB3O*3PD9MRPWYB.0JW,B\.J6E7A$A_G M/?"JSS.>DN%QF'T.Y-@6@!8C9PL# "E8;<+K/LAZ9M-2L=,S!:6)FO,G9SP? M-DI._]>_K$#?"=Q^&P*/O BIS\CD84)U>^0+5 V$8J*QI.KPTYHP,3WU#$TS MYM9O@IAG5N[JWIK*/0PS=]&'$".!=SC#D&R %;6OVCUE^_6Z-K?OFZF70;9P M+Q9&4K=Z*M4.FQ:>*D6'C^M2ZR?AQW>2/K$,5P:QV\8;&\.:-+'0;_^/S44) M.R80Z8^]90.1;SP3>&TF^5^L[237>([1_X&-V*:_"%]Q=#?XSM@*(1R+'C/! ML<9R8'ZLX)D]C&T^A/S/1%3^[II(&H7F&";_8$M*);413%#[,>'OS+EA'JZ& M2EW+T!P;K?S*[D9/;7-OFZOO-3;QVE?_?ND**Q(6COH^ L"?"?!L-'S4V1@ M_CC@WW._23C9E_C.^?8.%5[V#/P3.<"/[?NSC.#/@<1;E/FI8CX;MP"@>R+S M(TX?9UVAQ^BY_R6*S7:%GE-2A*=)>%R"F2PHS!I4A?)K!WU3J:-?_V8][?,9 M&WX6E2&Z\&M%C%XK8'2=]/(Q.+@[W/_WK'MV*>/"N/$5RK$-%RI@+9V/6,[* M-,$[+7/Q>!;<_TZ7OC;E25D$JKOM@ZXVO>$;( MZDQ)QT9]6?=C4-)UX<$9JLDY+?73Q:9AI<+*+O,ER+.>>5 M_8TRJ,]&'04\ZOIX5&-N>//<1Z67)(J5EIEZKL[HC[*M9?CJK?*H=FX:B??S M?8D.14?WTT$\U$EIT/">AP)@KUO@^4$G.4'<):! MB7S])S/M:F/GB9^,'#Z73?;E4J'!W2QOX9N#1$85%T_-POBI1+=G;(XM0G]L MS%MB_!W/'(OFO3']APOTG]/J/Q?T.P1<[#4N1AY[FX5E#< #5+M9LU8)?2*@YSHXV&.J_:(*)3F2&?,UIZWQ"_&!G8L"<+!(_(Z.?-"" M^VY&=7F5XS98UPDX%(D*)=GD0DN1;+(^$G)Y1[E/&FY, M(D8&V2'QZE1/4DUJ)FD.\J,D-]\D ;;=D0A+E90 -?HZAI0"@5EH 8O C\V\ M<$\_O)+L*/J/Y09E6IC#498;&$U-2&@K]5^)T87 N?V3\B+L\%ELGZYF6 !._)81LBG,V%Q,Q2H4H,[8T-TS]L?L(M(TE^*5MM(ESWD'\OQ-GM>U$#C+QCS82PH:-%\F M0T(TFVVFLLY+71]$$@^=K4N*4.0C=0\TS9"!V@\+G(Q[CBLA(6Q$?=J3B)'I MYK)/=&IJ*5$UZO3GP_FO?\][!KO1F]]Q!J+64@7>9+N9LJ.TLD^#9;>H5[_C M#)[GC_':N,-,1@Y3[TN)KO@\:U1__4N'#WDW=L-P,8O2X(14_77J19(\\ G> M!F>1=R%,(1TBV;?CMHDT -*XP\1I31 $PR)M&:8.17A#ULP"P\/&(ZA34^YM MZ(0A_@-HDO%DJ)=)=!A95MH=V2BV-+%BL?D[)*&5#/L983#YW',]D_O0KL9X M$/.60Y'M=_1J(L-66HNQ6A\WZ"'&O$AXWV6_0C2,1XZ^P;8/8IT;?P#ZQZ;P M\!,^YG@J+$4VF3\1$A+EAF. H(_2WVTH3-\/CC\FMC+!J:$+"3_5AQSB23S M8GCB)A]E#=/["L8Q&RBA"M8+VQ++$CTN=]C*K"XM^086".P:)7Q#@(*%6S]? M@7-3)_RL!5DVL8;FV0%I2(S#3)2D0F'=#9*1-O.IJ+^P\J:@'B$%+V%H(VOJ M[UV"<&)W]=H3I\Y]P:?M#%FQ MSK#>3ZU93)-/H\DB)3>7^J(@25+"KM<2O_RT/\SI["/C1!C&?%..->L9^NX^ M*;Q19'TQK_J-8.A/A#^? ]>P$;>38VE+B\W*7)0ZGAA@OW:7U-C1;'6B(6KH MF*JEJ(1^K#!8@@IRLS 1,62[F.E2X#<8;QBKDJX[F'.A7L_52LF;3!@@V:Z2 MJT+ ISKVU0;7,@6EA*2_>L^#X0U/8O$%(9(6>%\DV[$-<[F:T7*](M),4C62 M,@4_3#"3(D&5QF2"C5]@EWA_82J%>3!6=RA+Q1(5RBA!3JJ)V:ECP?NPR3_V M$E'11#)=97E#]_$$P]21,"LWX:,K%?"72\J090R.@YS#S6[82-+8J'FAJ!9> M[?(W\>'M5+5@HV$N,MG*->/H, M?;6=R;$R]-5\(\F./WIE^+1?DU1!>EE_[ MH3U?-!/;S_> ?__[O[;25_9N%CTG^@;(/%"PQ)_>1R$W.T;JX??_EK2YM+3\ M%#8FS,1\[_WOE2.>@T7%PSSS'VK])ZE+LGM.8VD1VH#35NZ<^]1V]ISWW1LI M.AL%45@F+.P>3MA?C8T!$X&1F%1N_GSUTF+)V#^_0 MJ>S4=CDNWCRQ=7HI\8JST64NF$GA_SG85IN1NG!$>/BLZ "'[9G&>,6B,)/W M_MSQXKD,&'@W<$]LB4@:$0&F6SX%'G2PRN>R2\)2/?!A?JOV\$/+.Z+\@C^# MR%'"IUVC,ORGI-*#,#0HW; !")JC('(F^P !&=-%.C8O[$T PV"HXN"+-QB& M%2X,51L;NEW'30&VX0TZH)YI8,,>"[75T>&C 1%\X(7X: AZ>)4#?1O$PLHO M7$U,),L*V0/,9_N#C4&Z0@[5+\SC+CAWVDO3;!N*W9?)+;QG*OU:6%0I,5\+%9-T(D/N45? M4ZS71M!'JJ]E?)BM-/$:AEO*\ MJE"=>.8RU111B-TPBY:555>\?IC$Z5=:$ M1+]<'Y24*C:)XN']Z@#_(8 [,[QV7?E\YF7&3)FT-BI/NZC54XJ=^V'UN^"5 MGO82J# JQNEI.:.GIO?YI# &>#%A;A]>N\[6S.(-)+Y[C5%C./\%Y/ZW3P^[ MQ+0J9W2=5'">4R6.@/&"_/ YHQ1=Z&42/7FD9HR,D^&: M9F(P?XTNPI2?D=A33ACW6778\\,"'5R>KJ'C]IN6*8N(("M?#5 \I<->Z M8<.8GLET=>SJ8^$3AT\+_):ZC 6S&TQA9]WMU_W=;PT^?&)Z5BM,8_?F(YW2 M^Z.'9%,J3%F7,@]Q,D =K")AFTUQD"]@L4T+!:@QE 'NFR+-E7A MIB0'#P) MD!TXR0T=E%)X!*,9/DPT]J6?%:9^O%(#1A_#:K-^TT+R*S6Y_ L_3OS06'W GQ'0C> J"2Y!( )Q31VKME?1R3\R."5X M!)L0V^Z(C35@W7B)9[;G".E?N(%XC33>N T@3&N%T*[KOMQS41V5>\75IBSW M6Y30P;4/.WK8W!!F9.K8&6^00,^.ZIP0L4J9\5.C/Q0+=:O=QB3 [3GY,1;EQ8[6Z^]F.SROC]!F4(H.\E&55YHO"1^_1MQ\6@7 &$*V@J8 M((JUI<6C;X%T6KLO+D1:(!,S:RCYU0TK" M5!IA20@F!\#,[96X-=(W3C:\; 3": QU&S%-N[(4Z5#-T:=O5RKK$A8OF#^9 M"'Q\H')!](T[/;S-_82YR"NO7<7J8..7>!U7+L6U(Q(??A=DAJ>_4?,!?CW8 M1Q!50QHZN8N7-/=R%*,-LFT-:FS=&W,T0^8=7"OM@V![RX8.$5BNP,)G K<2 M]D#"%I8;408HIJDC1,*T,&Z Q4E^)X[']26MMPIW8\Z$!*6Y-M^*HZ[]I(C< MA,CH;L,.ZSFD>IX)"[>P)@!/H(7J1H7AY;N:Z:&SN?.?G9C&$/G@).-=FG/5 M8 WI?7L=XN #A)(QP2_QP9.B?*Y/V'/L;KES(6S)1GWBRUV;EV29)O("[_Q" M@P?!OH,"6%D$/S?L'%0U>0 !GQ;EN3Q<7-@Y*G7#?"6;6%]\$SPBQ01_OI*@ M>Y8'&_6O*P$6*<,T=&FFFHY%)53ECJHA344]]R0S&!F-,99+=20[H*YCAFU3 M?Z42M4P=_OR;&"T^,7;=D,1FG'IPU0=RQQ-,D$*D!&2+BD2E<%B O-Y>4FU(5ZA[G0Q92PQ1O95RZLAN?E^ M_#&!99M&,;YMA5_H%\#<*&F)Q0@X4%ROAGM%:L%0WW=&WJ[B0_.B,CW/" F] M -CX\:(6IB:%4#9P ] M4X7'BH+S#Y&*,2J/ MVB_J%"XXFVG::EQWEY)-@O:58;-AYBQ<2A0N,Z,RT]3(V' M2297B34J+V+SH1V:XY%[ZYS-D_U'(U9Y;JHY)=DLS*0'H3@_5)(\)E82S.!1 MOV\6N,DPW@W9SL/2*YBPLZ,)1Q(B.5R;!V-M9)IKH)-Q5Z9^1]2,A)G:XV M2@W5QU[V@:\TYE Z?>_ME0CW8L<5K4T7C,%#35UP4M&>'RJ=WKY/55#->6 R M0M)^R#Y9O)EZ])(EMT>6BUS6SF22@^98&%?X;F[ZN.C G'MO7^2MB#T+#6:9 M:6_1?W@VDD^JFM@HQ[X:V:PXU>:#V!QEU.E#8O3RD&UKV:J;Z+0]DIT^+?.T MH#8S0O6A)H]R=+K4ZN.1>V^GAV6U.U=SJ5&9D::+N35)/%?Z8G3_[=G9;#E# MXV259KL#JRO(P[$/'B5C86LEX[GELVY#PKF-Q$=WBV'FP>Z'QB'W(]VHU6RF&%MG\W@7=/D>U?70WZLS<:\."11C+6*I#R2K795,I^<%(H8S?' MT<;+/&?4R]WLJ:K-OGD/-9&P]B!+UH!25N>'C760[MN.X=U*OM>BI7Y_O=M( M.!(Y0#;,'^VL&@#^3(!G,*\YVH,Y@/P%BL5[&OO5EL9V#4]BR;HNV;1DH[/6 M@WY+D_Z1-;!=N7]#1; APL94+H82QX5S@!+7@!* !E1%4I4 %VS(>-9 =OQ_ MO]A?)]T_(X3CS$WA18)$*[A@JOC]%+;=N2=IU#AR07B>[0C?YH47F/75+<>_XC2]#60O,\H/@$ _&8?7C3SN0_TQ"SL M*NIL7NRL'B3=@0@@)D*.*OZ3CNJ*:.^S!OMM8N^GK>1SEU$\'I_O7A"28CE> M 88JR\PY><"\-$.S8?=%J7<7#/-:6V>&@9@+S.[@&8%NWB)PHK^->8;M$)4G-B=:.YNM'V;C8/E">,=&>10<1,U)H%J]IX+ O- M84V%*)$HU#VBA?TX_$]71;V$SI!%79,P+E9XG7']N;K!=XL5+Z8P?L*SN04Q M_]U@]P(=C\CR*P?[Y4GBMB5S(( W!# 6N,(JG7']X64\JVG.CB@V]O,LPQ]W3EI@P0<6?&#!?U&!B$#:@J<_K/Y>I*RJ^ER]+](AMB*B M>H--:H,O)-E_4GV@.:$CM0H5=B2I5CIBI0=QTZJ*_(W:[PFG[UBVY_$/C/>K MLB+K:&)[#GSZ9BW)VP1]6;8- 'Q@P@OXW^4A?C#SFK[.IZE?])171'MW;;&$!CS[[J.IU<%#>$^?OTIT9@^1.Q9 MVZ"G_:?R_5AM<['N)]J=?E&=:/=&RYZ:?')H9S9M2T4C8B$>$OUOTZ!?7\@S MK[.N/U<[^&[!\KA57O0&S6S5+F_/)P4ZG=2Z3XU,O50VS)PDUX;%UV1+5\LKE]&$$*6,(Q<:@**'N MN.4\UPUA9&D"[7S=%K>F5PD-AL C7EG/C5J1>&*W6Q-7JD@;4+\2;2N.UR+9Q;5W7 M@L8TAQK3Q(/&-%M,(FA,\\V-:3:@SC#AB \;4KQ0X>+1N$Q'Q%Z9SA1 M4GJ\&(]$%+K7Y>)85O[Z=Z<\6RI2:_&:)8[8Y]IT$7D8J6F[?Z@D(:V2Z1\J"IBI/CQ,BC97';&%['Q",\Q32H"1D=V1A>>&4AI$ MDK.16GIZS*6*N69YF3A4%+!9U9JA1;8A9*8O#V-YRM58W>P?*N"77DRBK5$S M3H_02S5?5ZU$><0?+.!GJ?>M@9@5TZ-E^Z$[*,<:(YF'"_"]=9HC]LF:6FR/ M+CAF%$6']VV'/EA"+\47RE6>GN9'TS@7*O/Q2:A1F1\J=^=D%#%F=(3>J/"4 M8K,1-M5"M:H8VQ_)SA?UWF@8C698-MY/Y.^'Q4&HCT=R>Y!O99V"UBRC9KT^ M&DTEB6DRS;D8WY^SQO"C7FKZ@C4Q46RVV=Q#71["R+TYL89D-9O%Q+0IE5+: MM.Z(E4%Z#NZ/O4E%)]5MO3@:&K53B5+$N:^',@P>>J#$I-'#T#-2HM-DY[V7 MSA"Z6SQAO#MP]+5B]6G.<]GI2& *RP2?X_/-YP0,W3O1)"=%,LNNE,TLZT,I M%S=*;'4^AZ%[1_HH]1M,Q0]-^ M[&728=DJ#-U'_78=+?5!>D&7&>;1L.=3>R*06?T%O-)6ZFC5O[,7LJO+ Z3@ M[2S?RPE>ZF[S/E.#^LW*,22C?F%REPUR#% MHH$Y=Y%FS*$QH$4T/5"ZH&6#L^X9T(7-$,U-<;?C=UE9M5F"K@[$+OE,8Y6_ M2-EGP['P-UC_1 L98?FUGM*K"_YW^$JJVD7#4>$$5>VB;%"FY#L*Q(1C066> M[P%\/"@"]AV CX>Y .._ _!LYL\!/!WF(P'@OZ_JW6OG M7I#][X%>*PJ8$5.6P&+C82%^$U5P&H0$__1-?$S:Q/?==UB M._\"]>3>XGOGXS:Q#Z+.2>IJ?@,[66UV#P-^$B.YM7)Y3)B-W12S<*-NSL@) MWC*V_@24B-P82L ]\2T)A\^@Q'FJ09Y?$!QM;P07*I*-U_KN\_ML9/2%-<9O MC@-_PT7ZLW;[EK/@Y!%WU[7]DPNLJS[LMUQR/VNW?SAJ7]HJ^Z(=]GV"=A4W MQ[@!IB5D^W?K7DMDR;8AQL.]];8-JF*J8\-4K5.$/-^$;/V4"+V@%KR_Z?]W M@FVX#.32VSC.8*B_CL>HUVU)5R13(5'J_T M>9_C[NL/$#/'_?J7NXMRT;UP]+]/DV)U ^K IZ1^0(UGSAVASDN8;N(FM\K; MY#,O,V;*I+51>=I%K9Y2[-P/JR4"Q#Z.2GT#!: M^/4OCWT: MZ<98U8_Z['^D1/V1@O//8"(_4@S^2&D7X./MRZ[KM"#;1(HAA9+P,J0^#.BST99L-NS^S,U,IG M"JG(8M+,]\4HN-?YV%TD%GN7/R^PGJ_4>@Y(^.LD?&:/^U=).-[DQ]4D2E1' MTB2J/D(D0E)=0)UAB@,="23VE&> M?J5:EH.U+MN@H(+ !)$R I3BUV"B_F).<>=Y&^K3+6E)M\9) ?H,>XJMW(8< MOR5Q?6NX=*M2>6*JX]]Y779K[4F:5T61+#.Q$?[5,-SO\H0W-XS\FC.OBN,U M\<=5!1JD5-RB@ G3E/2^6\KO@#@?6%+RQ98BE+#(8>!YN4!L)N/--7.-X!4OW7,$'6+'8E&IL\W%:S0BSO)PS MG7@E0E=)@Y\/W>3\2%7L)VE< >E>EV+U==)ML7KW)9]Q[C.Y]##9ZW#3R;B1 M -*%&QSFCCD/Z=Z8PG2%?I]KLQ-O08NZH?"7*]KMC0;I!0Z?*PT+N:+=_N&H M?6-2^%N%[5_%UQH=O%:8X7?@G;AE\?EGL)(?*0Q_I,P+\/'V)=@5VI&[\0,D MTC,P%6_(5#Q8U^26->2WR@M]M0O])YWJ[ <<

[@.V7&EIWOIT_9Q\KP]8T M,IH*V:BHVU,INJQ"XS6.M+[=]\*=-7CG-N3\#1F]/XM(/^9'/PF]?MR3?@IZ MW2737NBY5:JUQNE,F8\M]?MYMBS=DZZ+ B%3/@@[N$;[_6"0)%(" _VZE)9K M9WL_4S?QB.&8=F*68YQ>F;'.J"R5C4)/:U=3"FG@^B'MY$B:UP[;?UX ME6)-9KO4-;:*.;,I),Q173 *B\=9K_/8(CV//Z)4_#3=X7^)0WVKN=C[EQ)> M+\8//-GXQC8F[L>-7O!A)H[&!]J;;??$L&VW5]JZ>^K?1YVXRZO^W@[(<6N8/@A)?@]1UII,6&(WN(3;)>ME>Q@_F;6+M] MLA]:KOL1IL&KPCQ#V^J;Y'VUP1"AW?0_;CMNY=/9N-!*^Y5T'SS)Q2,5/5XH M)G1;]3=51[)C8JI 5F8A:XZ"E*QIC%/KR-\#/=27AR=(+%1+A*0Y,3-U,&?) MZ]!Z!@^I:)*.63KWB" @2NS'4HMEYFEXWRPX?:?;?6$JL<%\D['G2]D/L/8O M;B=!VICO"H*29)HB,PC%G[N-!T0+]#1*JX(Y>&I4?_T;WQ,!Y*A_Y('Z[ZBM M\+@.: Q;LFKUIG>FB68DKP_9]B(S5MB'4$$=T$Y52 M\^=Y3JH<73)Z<[X;;^T'U'DT!=93V)G;E$*H<6!H6.1;+M\M&396;RU9,RS' M1 W\MJ2&QW@*;E=L3LI/Z2*:6K14G=--+*KFHPYF/ A3RP3/;)L.^K3*Z4EO M%TH1/ASU[0R5",??(>^[;=7T:%,KO!V*X;UDPLWMDJ^B_U#NME?E,S^W<$W5 MT4K]/(GR_ 6CS ,6)QQ=QX9.H]I8;9'W>T'^^M=-\7)UCVM;W3<"LHU\[>W; MI#:H125,RVN]J6CH_08RQS5D@^9DZ##$D[#1XB0:S22< MT>#GOS3O:YT!]] M06LBA.26+,#KQ22+9:=J>%'JF?%$,Y8(D4$5!PL;R2)JG'50IG*J,S27O6:< M+I0C!K-4]"?) IG*WT78?7OY,LK2KC_AF,"D)G@#U%] URS]3[%1HV!'Y"/SS]]A M"DPL;V%$:9IX^\;*RY*L:R*!I:EB=H#M)F^M_C347+4'> 1)4:7&DD)B_ARR MQ_]WV;8XYR+K4.3KZ-62- >]BETKY!(VD$NL=-I,TE;HS#A7;(J%VKU4#,W! M W8 L3!'U@#"@"!G!ONER/J;P#Z855GS10@U1[DZ*J>< <--LQCL3'C?J[\" M^Q<).$R5,>FN2(JD_B+3EO"T6+!B*\5S9: %ML3@$?Q1TXRYM4V:A/"PO4%- M#-//&7:M$DG'-H1&=0T=4Z9$;#,8[5,ZX1Q;'$FR\30*UF')T)7UA"7X"-D4 M/ET9;3&.-<]X-R@(K]E:Z^;R+!):[,[G @P #/K)*MKPPFT?O<,[5^K0P*-)B/A:K)NC$53"B][C;2;PA8+T X/Q9&Y*.V8F637& M+;MO8L$9C>S1V'\\+%X;[!+6/BG97>H61L+(/4Q6"#N@TD@F8";(]"749>(N MZ@*5'L'8V!&,W<%33&QGQM!+\>R?@Z&A@:&$>&:4H$.Y64VM%MH3I]S_,H8> MP,98^#+FX#?:>OF/B\?Y-9J'Q]WJ5CRD9ROY08C.\=GD0Z4_F%:6_3-9*NOR M,)LD=-!*T1M#K=491WL9%J4P QG.U8V,/[\3C;R:CWE8?VD]X?Z"\)#'3NCHT>T"0/6X:[ M=I[D:GP^PYDZ^ ,R@=ELK,?_%<\?0I[N2XT)N"S_MZ2!CP\^K HD_GPNE+"( M1NM8GJQW_9J,7R4-X_SKGC-WD=A\)OA!GF#^(9A ;:*"9U3CX_V7'!8&\.Y- MP6'H4U@P47TL_X@^@'5S_-KOO:*I:L%]_F7B3#JFS5<:G96(50B]/8 HK!R=DY767 M*1PD_'[^J;CH(!TUI4PE&V&BP^ZHC;FM0$?O.($Y1OD$G'>4C@B!X^WVD&H[ M\*/KWP'4<9?HVHG J,^**PE++/>^&3D*#XD9-^PWIJ-0*_/BL*I65;A/7&P2 MM3,ARR9P=A(NI9/SGN$3U&VRV(/GF=1"4FY9I*MTZBG?Z::-4J0+KE7VCJVSU7S]YU%P J_S9C^/GL]^,W)X1(J1I:N2D -:YMF=^K5F=1U\1* MP-(3+F#]'A NDF,/#!//"OSBU.Y!ETFP(AMWF<0B9 WFM<=RE\XER]'!LAW5 MATS_:YZ]-0Y43 .+R7%BM2,WTH YZ,M[HI^2SK)E33-JMI1*-HN2<1\%VHV$ M]V,-5LX\-XW=7*/=Q'UGF&JNV/!K8XCA(DOZ'>6&(X&Q9^B^#8C!II .,SE MW1EFPY]DP7*O*P._Q7V! ),.I-LK#!B M4=(W;)4X&6PLNBQWJU:8>K=%-M^\#X!UXLW)2-.^PS![.^[[$[K^&K64A*[4 MD(VA?D#U/R@;Z@[7KY7ICCIJ=QY+QL,CS775ZJ]_>8&YBW%'9?VVEC\?J!CH MGO])ZO=-U,>'=D) ;O(I(II MU%$?8\Y8Q+94-'S >EW=A-@4J$B;13777L(WX'D#60L-$TF68RX);!,NL_#K MGJ4,R_8#L0[B[2 :[R5C5KO69$-#9<+WLK'1G'@$P@=TF@UOZ1;' Q44+28J MP6A][=,ZOTI#?2J4>B>\ZLQA046$[4Q4GB"82^\7\7$A:S\6J*-;;'V1'#^/ MV&5:3L5S1C^G>-2JZEA53-A'QHDPC#E1Y-!'(X(BGN'L;NV+T3]OZ&!7HG&U M$:7!;BE) 8\SMG=(&#L1C#,)XK4Q@GUT^#8%]B!F^YEPKXU,%$=5D7EA'JA-R^ MNU8BN'U<(4T"XPT? ]V58]F/-Z%X/G-$J3W")M>V,:5B?='?I0WQC(C8ON2Y M >:G_F]82+G%J-T0 .];O#I8@/L)O%*&#F,.;Q];0Z"\07PFWJ"%)I))])8P M5=Y9-7F0Q%8JKO-F9UN4A*G-)GJ3:V!IJM1=@=Y;E>R8)NQP]]F-L<#(0-%* M&8 "KGM')_4YB1*5E#2 +%4?(/RV,'60L;AI"1NI$3)^C0D9*(-_%-7"?'/Y MFX1\[N09L-$P%]E.P^#H, M?O9IUL35?"!2SH[4S_!F^G*X$MCHR?>)@^8W( M39=26-J%S4:B!OGWO__K74DC&R#S0,&2V,8^"G6QY!N%I!Y^_V])FTM+R]M< MC DSL77VA;\X#A85#_/,?ZCUG^LDDHW5C*5%: -.6Y&4[E/^5R1;R_]N+ZGE MU\ZLJ]01E@D+.P"D6D<5N!#$B+S-1 ML:NPLAB+1N)1EHEQ;)?]Y:Y/\I/2GLSL].FQ0Y>:8V=2JU=U+9=^F(-^L#MR MR(P6<2'1E$>YD"JW8A*7,I-5,)!W1[8[[>X3:QLHT^[/+&/IW(O=^1R/C.R. M%(J3WOUSM9&BG=G+()DVL?#/5[%.0N^-+ P>"^KC(DJCEAUM/ W;16?8QR/W MWBY$[IN2ULF7,@7]B<50:C;N(S GOSNRHSYDEH_"O$RK*69B/H?JT7IMCD?N MK=,V[,DH_S2_SX1Z(3[-BPU'&\*J4QDA5&$Q*$3Z(Y+\::@]\LC@>Y'#"O$ M#X1L'X_<6V]SD4REDIGT@%YVAZ(Z+I6SBG/PK!ZTS/)^B'^EI[U:+/]$%\3* MJ'KHK&;S4EDW(Q&Y6;[/C47I/E%#J?FA$QB:ALGG^T:SF;J/SN>UV@0EG?XA MN(JRHPRLPF2K^L.GD]@4?Z M<^XD%1S70SW]\F<[)LL'50G7*7-$4W#-(=GHZZYCS28V/<+J 5&C0&%81R"1 M,$IL*,$O,S!T_8NXG@,>?@JTR;$S]E[CA5-B;63F^9O<[T%I([X;91WSX$9] MKGYV;\Y=10DOG[A[(-0+0P"\TI#10IZ$U:TGG@\0Q@2B^X%=B777+EPJ>C%H M]@!O#D\[QZ8UQ*"9L@IO@V\-3S=,6-086YV^G\I3VA0#JUT0^F" /0V*ICJ> M:*J,WV02_P:>U/'"S]1U4Q0*BW#3F,/FS#THJKIK(Q,;?R:IKI9[$/IXVVM% M]^ )>-#WX1VFB"T#5BTH?V[O!F*!YA(HA M91&X@=EJ$TZ"S35$;OI-Y#(GU[\(-A'$4&">8SE=_WD9+]DWM)<4R9J^H[H. M. ^7ZW$8VP #\3O6QBMP-B@1 J8Z1A$WAG?/-O98()P+L%*8%0,3+PBS.,4 "]=.C4T\= 4&J7\,Y.E&9_]%A"=F:EB7 ML/YV"R!_H%R!NPAA-ZEO,\O/-43I/2/2-OU7;)1?^/7>ZE.12%B('JN&L6&" M;

MU_*FE^.+-7ZXHS5^ L"?"?!LF#Y:XRL _)D ST3"=#R ?,!K_AS ![PFX#5_ M&.0QKSE:T30 _'' OZ=X/A1(^VC)W#Z?- M !BP"I(-ES;\C>Y]P:?V[O!^T;]X<] \BUI>N(KU]GK6-1#^)Q\0^%/;E8OC^OWLXO^(:[&FY!A,-,Y?MH/M5K@%> MSG.SA E;@PEF/C/DQ(KT'PV7/.D/:(N(2)VPP:\.X#SMJ$YAXYYD9,]/3#> M\J)<>Y>:-YT1U]+N_7)))1_I];Y]RPRW@P?:N6L\EYM;:IO-"!.K:!1>[D/Y M*,2C<9@/LW?Q YGX-T6_'Q/6I-;W.P5/0)0_DB@_WN/A]$3YN*S6^@_UD9:1 MV-XRU2VU[;&<$$G/*$:XBS#A%?.?_?30ZX0J:*7QH M'1_NET!*4-]6MX2\&Q5G4=; ,&VW#J@7,K;.OU''?FP1)+"\MQKY#X\U(N4A M#L6O%;V0W^4KP4?EL1@M1D>+![I04_C'J)[NC$*)$P4?'0$?D1G"2FY \-G; MT?$,\DT.%XMX0>?C6M $,N'5[V/7+E[+?L5X$0MQ97&5"((:0N0NX.?]^3_XCBPU-S^)05>\UR-!$K*TRQGI3G MWWXKF=BOR;I%WON1L9%^3N:V^_\^J=2YP'-[084M.=F;#@NU&/SYC0[3-;2 M)<,0NXEO5]!*[ZJ-O.I,Y(_U6K>^K@E9*>FY6&@Z44V\'^@144W-11X4.28JW$7X]\F*@#0# MTKQ]TKRX#G>4-A.%V?*1S]1%NIQN#YE:.M>=A:J8-B'!(Q^$^$?3ILW MZVC[[AS'ZSW2,]G'VZR+PZQ+,: ,ZV48\24,Z(OO\+NY\Z45IP,LV7IXZ=7S M3;/6=#)V+5EK-UEHM1 AB: 1X8Z^<"9H0-@!8=\^85]<[3I V79Y,7P18M5A M4TUP6;XU;E9C$:!LK&RQ?.2./=!S^4^E[#,D^)TZ5'2G/LJH/%->Y?6 M=?J+C5[W91%O:QEI&4H4HW+/:C;A1MEK)7/.LN\I8SQ6;5)&/Z$K*8(5?:3+ M*K+2JB5KAN68!Q(R(S97F3;F^4E&'3^'6+D]>;3:U?V.BH?'?6M'1<'KJ+BQ M<]*&9FOO9VNT>%.]P4N-1H*RD&UK;L,7#W+>0JGR1FOL*+0C95C2^8$T8;<< MMX<@-#[T>BAB^-K0:+=DF/: PD@E653#T*"]'.7UFK:7U%_P%I;^!UY._F3^ M^?L.NI*K^/E>CYJ%J0<)X)#:;-"8PU)EP MX"4-$O'#-42ZV\AX(1D)%H(1 6]G>4HOR.+UUE24YI:C MVOZRPEL@8",$!OA?>,(;2LWQ)ET0*N[*YFY'(U,AC<)]U_^2M!LY6PMB5F0C MH$-$@$>L/T!_DJ)JJWTR*H6U -*V!/*T17)*Y)"\,UH=48O ?Q/\!/H8]EZ3 M$X^YB$G'4G5D6:1UKIM#L9[_K4E8)]M!7-XLTM-"5'/Z\ZRSF%0_W1]YOI+CA?LH15J7*-!9QN_:Y/:9^2''_U8/G).@A_ARS]TG.G*^*373Q=%H M4:[*^L?1PRU)< W*EX/JN1RS3_R>F8Q0;*-%*BZ8AW$$GU2[_#%%C/.%):1 MQJ UYH;#=/_7OY%C?;0!$R27!9".\08TZ$+>NZ"S$U)4MQN7[#4 DR88=3!0 MW1;T/P1QKHEOO(H8/@K4UJ>R58-G$QD,I)KJ*%]_S*3HPOWSLIP7D\4JE,4Z M@@VD"3!I P6X# M=4A/._@.S4"6D\9@:V3;Q3&+M&T")H6'!.AUG>B55)E0*C$5GS-"2[9:#9&I M6]'^&^CEJB=[,FEN.)I",.Z=ASW!AH'8?9'8QG.NUJ>%09$6\[%8-4$GCOLG MK_ET0\Y34V8B]ZE1*#E10M-FH_^PW/*PL!\_7"(L4L8*UA5D0H"YU$>K4PVQ M&\>:E;5GF\1.J[5DA6+W$=JH% MW5+!0MYZ%0B8(\KC'4642Q4_JX[=ET@ZM.C<;A7LL2#01YT#TV#;V=[C:YY6 MZ[6ZE2#K!9H9>^74P-MR:NS^67+NR^CL0C[A MXK8W<0IYM\H6@8H;I)YQJ" M+!2CAUNV"+J8Q3'Y @&&8:]Y3MB_ MUCY60HCK55&MB6,#N9"R)9ZC >6V..'P?>(@$9 MK%VL> %#>- W,,D[L+W&NXV##[S-]V>82$;JC-0PQ,ACJZ2UKXDP?IMD%LP3 M=()H>)N2V55M5YS\0PWP6F;(O*-4UW3MJ:9EX[UJ/=!B\+L%ER$82N'L_0#-?#F[_*6"VRB6QT5V63]#D?Z2FICU'=6;4S\SN5XJ7-X$S&W M7[+K),:6OSW8>B'QCH_@(+1LALE57X=MN M-^^CA.1'F_LZXL:" 74^O^S]Z7-B2--PM\W8O^#HG?FC9D( MS(/$[=F="+>-W6[?=[N_.(0H0+:0L YC_.O?S*K2!1AC T*">F*W!X-41U;> MF96I<2>"WL/-P&N.!^R:#X@$G1HZ6B')W[%SI1AQ^J\$TN&NA!^JYC1"ZFL--*1NRDM&@P"Y 6<50R+(?C!SLD M-CL(:1BJ2:G3%^O\W'4<4W6 +IM L,R @,/=6&OV#=3=6!50']&X@,;#(7@U&<#1DP/&RV#:((58GP M-%I 8X;5IVY@V',;5Q4J,"HJ%FWUQ;(IZ."8_/;EC#@X2&&3P6-6MR-"Q\;8T8AA3\UOGJ]OU;ID I11F _&, M($4>K\V%__[W?\5*C8UEQ?!4I@C(."@4FNO2(5NLDIG:AOFW550T';ZYFIR7 M:V%%;W]Q15Q4/5^2_Y3"CPB$L7/JJ:];$3C%J@BSM^)UA/EW'Y13BY0C5^1\ M9>2 *V.G.V__KADS:-,T V0H >VH MTWHWAK<61BN]3::LT<.;="HCV3_34SIXJD8"?"::[ 6J!2W8ATEU)ZH)"$^U M*N"MGJERT:(Z&M"XRC5#S_"E"^?#*#(_%+(1#9.24E3HH.X+HS(84:4,]$6P MWYF$<-4GE'R@NU)AZX"08TIK*%! >?1L:I5J6(40-L$%%I/2H#RB8@V[+]P]U_H\TUL>%9T@GCCTU4X'Y#!L*P>+ L54E?SJ M]Z"XPMZQ34$6U$('BP$ [= CZW,P@@[0UDV !HZ!H0J=Z:7P MJNIT)2SIF$_44LN4Q?@= 0;H.9*P,^9.H:CA5T'CW\KU'"]<3QW;S++46YPF MJ.F')\$L&]VA>3[X&^".@ZX5ZH)"QP[USRPU3#WJF?%=*,> S[%TKN_#4]4% M<^JL'7X]I%X5_Y4K-+:&"#?N23D\>[CO_+C\?538O3VOOYT\O)R8I2]Z4G!8 MYY"":L=LG86 FN@W<>Q?>X=7/Q_9$0UNS3XHTL'QP4#JS+Z]=VV6Z__?ZBZ_5S$*Z^-;UC=,K'KS< MZYW]FYOCP;=_*Z5:?OQ&9Q@X!4:%QC/(46.8/NT[GM*[Y+S1*])A_D#J,3 [ MTY)%6Z_=Z\$K>58*6^;SX5/IH?QX^*LSGBPZ^;F5)HM6.0=E^Z2J!]_YO"FB MV$K;UW_3FS-ZAWXI+MMC+@BF^W(Z5ZPUR:9Y_OW7VSDFU ML^ &=X>G^S&N@44BD'-@U6>'F*.(#!0"S.BL'9ZP?\ !ZRA$6,=U0Z^7OQ_W M[PM7QY<[E:=^Y^SYIO/MWS8PA7'.88=HPV'@;%/A>@YJI^U_Q^3MN=XGB!3Q M;V]^L=P7%"5 M;,[@Z-OH] ;YML)G0I^9# MW?:%E]3W;+"!8!4:IJN[-&KI^!$*Z=%KL1=X2R=,Q<-)0MLL+V%KJ "A>RK8 M5,1&)A1BHJK1=9E13#[^F/ !HCBOV://9+/!#0[O4,L2& M5:K&,M?Y]P@MZBSE[NC8NV')&]["ESIY ;@]M44V TM9@R_J-0#@2$TXQ#8< MH*/9>C\:=)DD-#8"0#&AR#&&>BQL#.QA'(1*1!!&@)F@7."/#,FD72#%ELKB M<(&$HI2CAC&&@+R8 X6U\<. *= /P6!X6'^E\->Q#BY2TSJSXG1-;T&HX=BKH]C&L3KT=?H7UJ7]-!Y M':'V'%+<@!@&_M>%F74_7DI=2B894(3I4Q""\86PLS:%_X^J3I_ G8^Q);X&NAFX-*9PA\B$G@;5AGD8QS%T@+NI MJTS_/-%; ^)P973'-50X#TW:M50GHIA? 2)V"7R%"ITO:A>!F#$\&F4_\([I M1U)?48>&%ZBZ#*@ 9\Y/>(@9'( 439:[X0P=EW#G<8#/XR@\$?>B@P+$GHB[ M&;@SR2I[!WUBV$!LD"T! DU"G@//:+._5XXY!#,[T*?DG[ ;V35JATW.L-C* M)R+5)*09&W>3,"=FL<^(,O,B1E?O=/'J+0T/V7JK0T:T'=!J4!.5;,_$Y^(_ MMDC/,GA*D@,S20/+?H*/%N[#I1G,;ZH?PW+H=2+UA7_1-BRKQ>XR609'$QO0 M#D-D/,ML/J&&&,B,OYYGZIK>I]D<:+T05_F&-T#2[1@&R[L+ M;>')!G..][3&Q-JPIW6.QAY9OJ&!J5\J3P=T8W8.-6*HH8IYOH %A%TK\"<- MVA5"DW M'YI*J_0@$Z)H]7*UJ"@57H!&]8M 73\XK=)E=Z_R=/2JN6[K[%=;_]G!*,WH MDR?](^^Q(?_0"F>G.][6Z=/+T5[G B_XCC[Y]OV7\?-8[Y8:E8O:7=&3:_?W MM1UXLCKZY'Y=UL]WWKK6S5VQ6]%>[X:U[WKGH?A0'GVRW3Y1*MWGP47A63ZM MGI6?U+N2=@%/RH711TM6J6P8QMY[TWN/%6QB.C8H,Y=Y^RJ?E9Y MO7G>NO]U4[.=7W>O'7AR?- '\_M9H]?;>2L<[73,ZB_K\.=6I?-0?AA[\D;> M;>_>J[^-PO->]6;KZ%?[J&1=P)-C'6(!K M;*%7#_U?9YWK1<5>\:!;([>5/Y:)2W^_N#!XJXUNJ#LK&X9%Y4G@BE?O]BUKC M^D!3+^#)L2W9^K"BOCBOG:>#EYV[&WWG[+9PW8$GQQ9:._Q9WMJO=,X*Y+33 M[^_OOOXJOW0>JN.S]U^O3T_D?>U[0]5>7W:.BO:UH^X\U,:?5(^]+O/-3'G_SI].Q?!??QN-![W=UW[SK:W<'^ ( T_FC]L'%Y M9Q9[OY^&^N/!<[?>+CA=H!!Y_-&[O?."K?SH/SWU+LP?>V='6Z?/+P-\= Q0 MVN[MS^\G#T]*X_G'\_>?O:>CBV*3CAJ'U$.E4*@HM6;SH:@6"@^E=K/U4%.+ MQ0>U4JX7JDI5KBFE,:(>MKX/;GZ\U0M'LO)P=OQL=([Z.Y.(>K __'VXU[XI M/FW]_G%6JYJMX=LRB:W]A7>D5;JNMFR--/; N+N];C;V=B41]6^KOO.X] M'3HW1^7'A]K;^?7@_+HSB:@;C>>2>O?@U@J*9M[8Q=>SWUL'DXEZH#RW;A]^ M-K1"[_EJ8#9__;@_>1U,(NIKM7[U<-VR+Y\\]?RP8_1?3N\'$XGZ5=X:WG6/ M3Q]NGN^=P]T?EJX>/N],(NK[GV;Q56[>73\-E=+=Q4[_^4#[OC.)J*WVCY>N M=NC>W1PU[KZ_[M\=#V2Y,Y&HCPHOID*4Y^?"@?SRZWSP<_CKBA+@V),_GN76 M[X>=H7FCGI[OSEX>*TU7@S=OBA<3"3J MFE6L'CT_NM<-Y61W4'OL%D\>>SM1HGXG37=JDDPZ\@_?-R=&?AG1>+_]RU,O MI$MFC55:E[0\@YRU1S.L#DV6U (S?!_R'\=SK7Y7?I[VK>O; M7D/7KLRMH]-:R:CL+"A[:CJ:\$.+&OCH-8YJMIR_TQ74 MY %7;I2Q(K-XC4WM.V3;_Q!=1C@K,X]H5T?^!3..Z#,WF M %Z6\\6IA<<%Y 7*KQ?@A7@5XG7#("]XS0K%JV VS,"24%4@J@F$%5IL42EU/*E2J:("J,:<4H1B)(0HB3; M2GE^1)'K@J4*EIH$)#YR5VP0)#[R'RPX S93P!$$,[-+.W%Q\2=3PJVV4"X$ MRQ0L,RW $00SLYLR+2Q3J-F"!(3,$#)#$,S*(9$^-9M>RA4JMF"7@EVF!3B" M8-*K8D]@EXM4KQ-VY\^^;W[3)%N"XG-;9,;3^+]C>PY".LIB0SIR*5_*5D ] MN* EL&(9:J+ A$QB@N / BN6SQ^JV<>$632G_]$T0MKME?LF:57:F0[T@Q6G M1>M?D%K_Q=TF8 K_L=3U+]V I1>#H]6,BK&R4K,V75A0\^Z@?0N6U$-+P.]/ M[+=)")L3GQ_NF*T&_YXW>7FN/S;,^L5CIW$F%\X/.L[QWO7!(-;DI3A#DQ?_ M>CSG)ONVU<-:2@B".]WM[O):Z8U77M9R!ROY.Z1UK;X&;1R*W_SB"Q='C_73 MIZOB9<,;MJSK%[>FEG]AE8KBMW_E>B4GUXMCO1PRS@%\V;1$PEBXA_.3A#$C M7?0]FSPTWU3E^O[@LE.H=(\+#X>UVL5.82==A#$+7=#F1YPHSHF-TEGMA.VX MMY0 YP]^/9'?O5:OE'-E93;9*VA_* M#9;J12NSG*_-9F4*/!>R+).R;!Y]>9QX[]L@*=[TW>N&]Z#IY$=;]=KUBQ7+ MLHIZ?3J\.QS<-KSB8[-V?^+U=F6D<+0CBZ5<31YW)0D:%^9C$N2P6%GVX_BV M4KG:^>[<'/Q\_$EJ>YZLE : Z=1Z+$QWF68IPAFTO,NXOV>S/+X)>+?67%K/ MH6K? 'O:B[,GV:AZ>GEWQ[LY>&@=')TUGMNM_JHMS[/CH^]'SL-6M['EU9M* M[['_\(/6SD?+LU3-R=5Q'UC&N8"(=*[0!/T272Q6;"O53L=Y*Y*S)]T^+NW5 MNLK%[C'V@"FCLV56$S1#""_$GA!["1FI$\C;DVVU-'RIG#:V"-F]\K:^WPY( M9\5B[]2HZMKY3>W@Z?F@TSZY]1J#(WT /( &.RLYI5 18D\$.U=+%XL5>UWO M^.W[?<&R"LK@]\N^_?/7T^%W%'L\UBEG+-89[:4M_$?"1[PVXG<>[9IU1H^2 M!C*>2(=USGQN#G19;Y[>/Q84I5&TK-K-H7:V:L_Q0[O:[SE%^?Y&W2WV7VK. M9>WA%ELNHBU:4'+5FO <"Q,T342R6 E=.BBW?FKEIZ?"T7>/.KUK"3=?_@Y'-Q7CP>%Y^M&_?=-Y_A1.5BU,=H[/?YI MGS>J=X4#JW1Q9!^]F2?E = ]&J-R+5-4NW^I[ M3V[KZ>YZV.Z\6K6*T45%$$U5N9JOKTM@=5=_T8V,^Y52YUU.\.[S"KW/2>\R M-6K"')H_);>X%^ZRVSO&^<7PYDY[ M/#X>D&&G8>P@3:!U7,HK(FPK!*L0K*NQOR?PA\-.]4=I5BZ&^RV MSG^NVM*^;CP67BO%1_U&-ZY+U\406]9@G[R..$6@7!;EMDV(-..H$"]"O"S(-"PUWE[D9WG/>#I[;I+;=NOX]X_'57M-7\\NCKSABW[9 MV/7JQ:/>U<7KB3Y R@7CKE*1<^7R> I%-DAWH>)E%229&O'R>4Q>K'BIDHN" M^[UI]FZ.ON\_#(ZVGK5=G8H7:FU])%^HN?4?5X6SFNLH=!-8OKM=+^7+BQ 3 M\Z^D6/DX=X!^WM;!H-.U\684=#0X%XN=][8' ]M8#>%]_9P5$]Z& @'=B6 MXTCGMM76W?EWAU-O==D"%R.,EP%EMN<^W;/4'$H.A\5 =23XO[9E&-; D?[2 M3R;""?DS^ UCJI7"G[ATU_87X9\ZV])LGI$2<.;*-#'2TE\FC&_! MF&TX(A]"_M];R/2WFS91G[8& )-_^I:C4[JPB0%D\$)&QN2R@$[L/ZHV'W!OTN5WP+P2P.\/#6?40!^28 '+; N("]XS08! MOIZO"8P7&+]1@!?254C7C8*\X#6KDZY3[U@(P$\'_$(:A7[H0=B<[K#9[I,; M= FL+[9+8+FK=^2^94MNE\#_VX1(/7B@ZTC$;)&6=*+:6I?%18IR;E)G M/4%4@J@F$%5IL42E5/(5.5-$A6D5V>J[N3:(DBWNBP%2P5(SQ5(ST*'V([_$ MYIS^AXZ"N7,M)I)\-H"SB:3QD9,Z<0GP)]NTUR"\7J6 G M['87DF() 1EEL0$9N90OU#(5D*&7=9@QZM]2$EB3F'J9(43A5Q$%>@BF(IA* M>IE*LD6SEL)4%E5M.0D_Z+DU(';&J[FEJ"AD E;WQ.(="RQ;MV1;.5TUH3[3 M7/MPQVPUXG7IGNN/#;-^\=AIG,F%\X..<[QW??#U]K54[#"!,Z&6A_JV\V0> MW0]OGLZ&=\K1-1GV6N7!0X460*[E*C51IO'3FUBXDS1=E3T21_>9"X-$4'W' M"^AZ*MQIFW>;D^FR%JC)$V(F(-]'G9X'HGH1X>]A]/F_<=NKUAO=V M\>/MRGB]TU]0O-%B6,5/-_I9N86I]PG6?11K M8#PW<<;3-/=[:I'T]Y^VM)LS^>E*.=WSEB5GSTX.>IV+0?>J,#P]<7]?59ZZ M-];@H4K-R$JN5)_-C!2D*ZS'!2-Y$M*U]G9<'W@_7N1&I7Y9&RB_ZMW7P@Y@ M/QB/M>EE_07N"[&5<;$UC\(\3M'W;;-6>=-WKQO>@Z:3'VW5:]>_7O%XNM@: M_+RY'%P8):.@-+:T0?G,//O^@F(+N]24UUI)Y M#EW[!AM4QYF6;%0]O;R[X]TN/ M'\Y *98O'FIH4)9RE8((2XJPY&J1/0D)_?K]\+!MP^J#H1W__#'L M !6 85F<+I\S201"P D!EY#I.8'F/=E62\.7RFECBY#=*V_K^^V ?+V3Z@<" MSBP.KBYJ]6Y#[7DW+Z3OU.I;.T#:8'K6 M?NU5KW9O;VZNSA_WVMV#Y\/OU0%0 9J@Y85V1$W"T+RV5=/IZ8X#2Q6.(N'C M71M!.X]R39TOPRAI(#?2'=?6FQ[.P3G2S8$NZ\W3^\>"HC2*EE6[.=3.EN7Y M_=7HW-W:UYW#)Z6W<_.TU7GX?7UW\5"G A9F92*8GT@4<[!7/K_] MZ55OGH^_WUV9>[U*Z6('2 +[L>:K(HHI)-P:2[AYM.M9Z;S_\',XN*\>#PK/ MUXWZ[YO.\:-RL"P#\\V];CH3 TTT<*28B\^Z?[=O%Z_^"I_GX6MO5[VY;IYV@*FA=5O)%141/171T]5B>Q+2_5?1 M/=OKUARCH/Y\NMW7=Y_MAK*#9 6;65Z__=,4H$0D4)$9L1FGL T#CO5'Z7! M_:M<(.?E8>ENL-LZ_[DLZ]C=[S[O=7<.:X7**WFZL8@XJ^K,XN_A.V)Q%_U??78/7L^:VS=7E1_'K_M/0YO*1F@!:Q,EY%I M"\#ZJ"#)"HO&6JYJ2!GT:B7HI8[+KB+(KI;E-0V2C(B>6)=A$4(X@8VD1@J/ MJNZ*+E__K/[NWC8.+GKE]N#YXNKN8&=),L)!L4^;Z\%);C?.B7A& SNY>OU>M^ZZSQ?'!X?/+8NR.7 M/SN(E]3V*XEHII 3&R8G1O774N/M17Z6]XRGL^%R62_+4-EK' M]MG;6V%HJX?-R^>#]G.-R@FPM\I*KE01/T2\).7'0OVRZO]0C\\FK M%9V7@G+5.7JZ0+Q$ Z@Z0V&<_[@JL(^YCD[V_52OKP0?L]6?.KUB*UK MBUA9L?)Q%)Y^WM;!Y-*U\?J_=#0X.XOAQ+8' ]M8P6?T%]\%P;EQ4+=?.K"L MUD WC.A.O[8SG':KRQ:W& F[# A?=XFD]BP/MFZUI0[?O60CI+ O>W,H$57K M2@Z'C^JR5NU2440Z,WLZ"A&=QR'N X=0@88Z?_FI3E M"2< M6^&Q)DD!*_](G!_2HV-.$G9JFT1:/?71LF%R)"[+ MLX&N&$R -@# ^@M01MNV>I+F.2"UB>T@H;CP(DI#^)%Z_1QIH+M=2>WW;>L5 MQ))+C.&L6MRB["W'=D,79'CFJA&Z'T\MDZV:+9I[("M']S>O:J-R6;C;OZ]] M/SOYWCIY^9H'DB-4*'K'1.VI:ML/]NNO2]N][%TTGG_\EGN#\][;^>O.MW]+ M^?& ])\4.Q/62;X.R[[QUKQO%3I/:F.K.KSJ:<9I[VO716>$Y<_>Q8_]HU=8 M]U&O=E#_51UV;VH4EA.REJ0.,0GLW$=J!S!> ^RU/-?16P1I8!RU6YX-VB?] MP>W:!$@& -EU)&*B^)D@:Q"$.2 DIT]@WA>@A1S(&=W4]+YJ &$ >VJIMI2 M\]+.1&$U)JER@K0H?V;L^2.4>#.&QM/OK9;W=%;^?MDN'%R?>+4!WA2>X.Y( MCKQD97[Z\EJE7Q>W5Z>WA;/?AZ?%[W>_+ISAUXR%3P"TK_WZ:?1:I/1$=*]G M;QT>/A[\OD :FP#04*S=.[=STCIN7, Z!H^W#2*X-)N!B%-%IW3NH,BW7N*X5+EMBZPZZ>J0E M%7K1ZVCI3M]0A]NZ297!)IY1#-WP'>;QH(@'K_/53+4W=E6G*^WI+T U9@OM MBH2LBA6JJ6SI8@JYEH[JJ&:H-[$.5- 12BP,) MG_IC.H=G\*0.1:<+8S@/%XH\*&I=^>UFZ^6Q^=:Z:K[*\L4[7+X?@OLM\[G;/2S_ZG6^_5O( M%\85+*D/2@N%( )=HW,"0L"DN%+VJ0LTB68$/,!L>! ,^,=/SR12L> ? 4$@E]DC^07Z>.9W-0&R_?N_\(__GF80U4979_[*]5\D?JZX"MN+A8+>:4ED8,8VI>O3_"@ANQ M*J5(H@$#G%*,P"+R[W__5W3YXUDVW%*/@(R#0J'.WPXP3YNH3UMJ&^;?5HV! M.G3XYFIR7@ZZGVT'08LB+JJ>+\E_2N%'RF%'SZFGOFY%X,1=S5L&:;O;["W_ M*^HU]K^S')UZ(6QBJ*CHC!P1/V37ZF\K+"5B6P5(!% M_<^UI4UB[;-.$9$#)K(:(^:8X5]%< 3AAHX%1KIM:1?9I1GQJ*CQQ?@84*X4 M-3D21)B-LD8/;]*IK(@AS.\VFNX"#U_$YV9IC:>7QZ>G%T>7DE7C$:#?WV;;-'PW[=_<8V2DI>D<)T:['S%%-C3SHWJ%OLZ;%+3 MP0@%AM2B3((.2V3M+A^Y_*V?_MWW[('J&(?6]83NK\" M=\7&>,>GVV'77=V1+CS5!C8"6NDEZ5NVB]HJ *XGR86M"ZKRHJWR'#P%.*9; MKP[]XN&E?MQW7'YG]Q ;GL:2_J0VBZJ:#$^ 9;1G\C)S@C*@_GCOJ>T0U M\5= \BO"K!^ENN.[7. KSZ9%8:4=C8;8Y'JQF$.E' P(NM"_\#F^NOCC_I)R ME)J"T>7&A-$;KUI7-3LD,DWIW6FB#X>3 -< B*%UX7C-1YA-H@_PE20/-T6510K=K.? F6Z23E_;?AYYN:H;7(O!?9F#AK@#J&K$9)#U; M F7#H8$^M$XHP@/H\W.)'SS-^3\U MB:&3E_'O-EWO*QI\DK.B?'OM9146V-?=U3AZ-?T8,:^](_BK$? MP+#6)\S7MZW'2>MPNI-V@Q'FL>\B#R(6.CIP/=668(. @0Y%\CD=1.O J*>B M\XME )T]F=: T81GLL^V[CP! 7E(\LAK*0?#!\#L *Z,B(TN)\:0 $< P3U@ M+L@8X"=/-7PFD$.>3YD(#$5YA=9%).:$8R%5()K:.O5RMW0@5QN]I#0^I9K# M$:8R?3Q^].A8MR6]US=\2@-2?U]8Y*4[ C-3]0H68PXY]X8-43B@[[U% P& M?CH'P20=YB2JJ\D[/C9>PI/2/H-+@)0LI+QCF@B1<1%Y%(C((4'$I6)@/$V# MPAW&X; ')#,[/.(\(F/PR4!TH,N+E5X(9.M58S>4)HR9(2B"7E_P1) M;=,]YJ5[RY,8)<-7:NO=YQE,D)PD6CY^$AP V= MD;G_[C0:WC$<*S=-)03<9,E.]&Q[XQ86E:]M1D54I>E3S06F1WQQ?)VN!2-. MHX%+3@/ 5)AB!!N3K":8W4SW *;G]>D@'VU*ZGOPFD:CB';\/20K!Q<79[<2 MU04X0D91E"(FTP!##8,F?5$>^^X2)(PYZE2Y?@3"H("-<"45^#--U@CL]PAR M^#JLJB%;@V/$*8&&2*"GM@+.+ON,_6/$#?CHG/QX7G1(A=M@FF?ET'1MJ^71 M0UL3G\ETU$>&AI$M,\A7, !]J>UF6QA38U$M3'X 5'6'U%"GH3%D*<1^T6FN M$3,)X:L>" &6V3">=(1(Z"<)P;Q\ DD%ZH#_V%3!&9T+#$1V&L%D( _4)MIB MS(K$"<%,09F"61I4UC!+$J:\Q(R/@9_CP4_62XE ML@X:"_%A@GF5@:T-? 3 B-HZB!/;4JEG: N^0=%E/V&V#'(:',H_D+FRB!>? M[+*LK%2*#4%*-R,9$J :QH(GDTR0)43_XM0!\U(;1HW038#?J*OZ;HT(!6#R M$1R.':&/*(4A^;CTH@5:B?V.K;:0VN# 59 KJ,]C-I7#7HR073@Q'BQZ#"C" MG M(.0)CV"]Y#<#<7R^\7G<^1A;HC9CWY\HQGA'CCL7/M96-0H5CJ8NZ="LZ^C0 MH-L8W#_'LB>H,8\V/F(#J.-4^V'.1#H1<1D/Y6/KBT.KC@I_#U!]9E,Y!)') M\]GG9N!2*%#&D DS*%5;]_,2#1W@;NHJ<[F>Z*T!<5SVQXYK4(-#VK54AW,2 M:HX#(G;!AG'1+C;(?B]DQ5-R_@J"C*K,*,@M]R'#N[(31 MHH\(06?H@.[,UA+@\S@*3\2]Z*!,IN5%PDR0,%,2"3,B868M$F:RP]5C"O]T MQA[CT\0&K2]@[9/8^H%GM-G?*^?IQ"":B_GG/N]U([O.8?B4JQ)LY1/9_21V M/C9NE*>O.^904^^3*#,O8G2!;P#[IC^!)=_JD!$[!.P-ZI^R/1.?B__8(CW+ MX"%D('4B#2S["3Y:.O6D(2S? M^ @_$C37WA7[0-RVHQ%X;%[?:6#6@'XD7R M@Y=SJ9O4E<>PV3.I1]: !?=5VV66,H((L9;:T"&N\@UO@ YZA\D,+WA9QNP$ MP1G?[R(QG@W'W=7[/,Q#[W+ZI(G6:%LWF2T;/80<,PWAR/46G 51>^/^'^91 MU7T+EAW5U,.A;BJZ7#_(U/+7$_'>,./']P;%\4B53(]Z4&%L ^! 8IJI.^JG MB2-6L.")[K0<7XK/OKBQC.-^L 2?SWTT?L1V1(?==4>_?V[BWT@ Z"G*/(ZB3*;?SU,6;CT%LF0)%OZ&<%NX^OVF'TH#L1 M?M4D/(V#"6=^O]#R./=I1VC1,OS<,Q\Y:>+4.$AFAD@NNNG(FD/U@E(.G$O? M<]$-KV-.FA<* 0AB@+2B*8'A#I[AZH#0D=?STK6%&3S$[J'K9CPL$=MX3N()"ICF9VGJ&#^(?$T-EBZ[=<=$ M.[V.Q[ P%^3V!S<,D&$"B8FPIG>&>VJ+K .2?N+.@<]# M0$LS6P[/4(NDCVQ*V#4085'9X N$N/<]JF#YJDE,/:.OL7@J16;4F'3""J!, M#**R]#BJP2!],9(VT5!C&GES@G:(FB5=S:B]'#6 J$$-&^N KAXJYU0#TT,% M]1T/_0PJ^8AM1=WY+.\+;5/V9T0'/:/"D3(M!QG,"P8IJ9J$%!LML=15,5G( M!+D25-( 2Q-'1F[4LVR:=@S3TGI,N CZ59BZS%-RX/>6,>0P8$H]#5J%\8P< M>Y5F0B&_F@+7MJT& =@<+3!@3+*> 3=:7,_E.4&800*B$$W! #?_+\4342!T%)!%?14'IPL9F^V1EM*A%!\07-RP& M++M!Q42H,#,*T4O7/,PK9AM>!P[\B76\=U')Y-8$^]V*AYX&3720WB^K^[HM=6G:'VIDF#_#;U;0I] FHER, M&E,8[;H*,4CL\\3B8VC\+JJ_==76#Q!(_& C"U!%N5]-= ML#3R<*30A4PO:OBZ)AV!*7\1 %*>1W?!Q24-[=FVQ[,_658!Z5KQIL38(E0!'$ BEBG 5?I^PM0WT.AH.&> M2 \6BLX,:J>!E.IC9 MU64S?,]BV.3Q@R;[ HHI"Y11VF74:"CF8#O&E"=9.TF33CP7<5-/(F]:YRJ1*D M/P)8:#V$,23P\<,)G684M^F9^K .35[F=.&+1,2C;]"'^U09"NM9X4;#)\U MDP^=-%*B['/%V7I!IB]#6BK5?=[+,H49\ .6VO)Y)>>4"$,2%;N,QT7$,O/" M 8YWJ$^%W_##2I6,PP9O(\-K60-TE"(/"'@A=7'TJ.()*L[09Y:D1>DBL@45 M4*-)^:(>713GX#FNHC+D95:^BCB)HHL[>*DF@,XOO(46<7+ =%0Y81P;U],W MK"%31WPV87+9Q/WV;$2F944X=[JT Y%D@$D&99%D()(,-B#) 'U/7!]O 5HAX&\)\(K,.78U67?=TFY?9NT4)\* MF#P\P7B\ZH$V9W/M]-!%J85J-#UV=N&+>@Z""\G^M6.T(9D7$/?K.PW12= * MO+#,"TJ/!5VR,9#8_E>AF>%?]?$O8=@$LR%:S#D?5H9*BQ!:E8EZQY5*'SVI M7R!P%//8H6Y'?14T*N@@W,.;XPP5V95*)ZIYY+@NE.,6 KU;;MG#J&X4/5<8 MLA?JNU&"!-SS\+]1CQHU#WQO1K!JRW=1&5$7E1^[9-8Q*DTNMV-Q1R;I4+;S M@1['MC&8J#0Z)!QE5//KAJIB.U3J>BP5(V06#)81+UG,MN.$;0(Q;2'!)Z"F M2UG"Y7T#_7J<66",@YT>#?,Q!J@#S_*=@]PUYA$C*/#+U'S?R_;.,0#4,404 M=V^P /OH/%S]U8%SMN)I"LPX=C"(SB)P_AB(L6V $76H(^/2'+)&# MQ^<0I]E#;>:4Q)G]5]HZ,5J1 )-_NT@'T(=BAUUCL0GJ ME#'W#Z50*M:B$.$ 6HC1!*T7D>(WQ5G#?(3H5$PK4^ EX!,N 0#L'@[+T M9/A),I&!=@Z[+L]M,A;.M>E-9AR&"D]L+^!PF+$5X-T/SZ876743M^W@O-S> MB^X1D26X!TVWR^>'-S'"BRL-G-#^Q,P?X[N N(D61B70LE01P7%.YFR)!'9I M8E=7-8@47%1E7)CO&$!@4!<[]_K0I!?@Z:\NN\7(S%>Z:EYM@]\&]P/GW-=) M"-MB)!T\ZG]G<0"]M<7RBX)3'L^FX;T<\/!8'B3GFC0QW9\E3J2!!UY%MP;- M3VE%[.[@4*, Y]>"T5\5ICV%JX_53[_&B2GX\DN=L ML&0X=(%S3I6;!JG8]1%.J3XQ\)E]/7><#3A;;:JXLZ@9>E==I@89D?F=O?=G ).1(WS*]/D;+9TP6N:$D$E25_:D/- M0#W #^Z@'T]EB]R(K(%9>-L9S2:84*QKM,986,&-@I$K2U?<1D$,#;Y'RYBG M6"$9P\\#0N5U+A)+A8$PE3HGT30ZQ[0&3*'$FLTT2&'W GL&^9=O86!-EB9/ MZ+>"C* 9Z(UJ=K3Z&4,1/B+/8F*<.IH(Q3*!_+E8*I!OCD4B:?!!(^&U0$PU MP\QD"[YA>4;^#7/.E/%V;*2?AFY'Y'8?G?*,D^2E'7/H ]VO'19H[UQH^!89 MKP["W$S4(0/B1'6'?9KFRX$/L$?.PJP'/ZX=NL ]D\;VXUP[PM7P?D6094OK MA/&8&U.F(AU""#W=X5+4/S6>:XT#LV.G!1"Q6Q:4TJ(=VBP>GT!/E@S8( M"E MJ2P5DL:B>6YCFQ;)< &F&)L3AN M!VT@ZLR!G?Q1SA?\\5EM'A3B$UE(@.F, =&<:W3V,93W60@6-'0I<;:Y=<[W M2Y$)GJ7_#1-4_5QOICCE@E6W>!7]7,@HJ;G ([L3,V%H#F7@).0%J:))-'Z^ M0BY0(BDQ1.F8_H2Y6Y040R!J73!V&?5]'\D'YB*5&?QDE!_F.,E,\E-2EL-8 M':YV!&)PE);/"OT<_)C+4XM5K0T3)*,EN6CB/QW.9YRAX**Z'%\-/H')]_Y3 M^"Y+U*]YX@] M.QH5. B\<\O0M:!PG5^QV*5)U8<"IF4[GN4U!" O$,0 MD&LD-09^)WTW=+W%+]GQ<(=P(?,+4&0YZ:;3V&>.FH2D;I,^P7#HJ07EC M(^819#J3?Z;4^M4=3$/R["#A#E9.=:)WWIM0:8U,*X$57V%D83&=P,^E#G9 M[^YAVB)/[.,JXONPZ $+9Y7_6B2X*^%GF$1+HS%;&2$<\7_&SSK.7"); H'" MN1'0"BK++@G\;JCJ #?O8!,V*O= S:7WP?@M)U<-J['E6&*%?^\('V)E#&G" M#./^?A!+[?N1T29A/$UMX86+R H".38!S7K$[5H@LJT.]1Z=M4%BYGC<( )- MF\0M "Q2AW]PUR@/] 5Q" IM\DILV".)&>O^)8,\5D=^M_A=Y V__AT-$_H+ M"N5,N$;NR67U,W6*>,,P^9Y?' JK/<:*!-HQ"8T"6O,Y7I1@ XYGHU_(@6>: M#$EP);1&6_7=NJ$BJ2-(ZJB(I Z1U+$621TQK0!+++*%S5YG$>6632))D:85 MWK[S_=4\I6,J2V+>C$F%'->L3=TT-75S6F),5=9ATX 6+2K[.4B6UK%PQ5KX MQ'JMW!,4]64&:NG'77"Y^^B#!Y=%6BG!(=[ >$T:74['([^3.EYH^:-:*N:5 MP)?E\_ /L2;';C?3.""5:'^ RE'UQZ$*NZSDBW_FQMR4CMHCOGL%-,E *H2C M#=1HG1;NA.5-,[CN&:LX&JL_Z7#7/=7ZK78;K#9T'#'?;Z2V (XR5DXT5C1F M/^1"_HYPS)I31"+;5\?59B MH=02##:16B*3P6NQF_*8=X5#\B;2$=?#9,KQ:8818%XZF&VP8 %T+Y5\Z<_/ M "L*ARI )GAW D!8V82(<>JR!AIN%T9A]9']N@!4,JY3RLAGXLV&05WYOJ^> M.HQ: ""=MCC2>9XGNITV@OIG 4C0BN3@_ZF]_C\[P:70>+&#/TJE?"F,!X4! MQB^(43E?CO&%(E!.G!XHSD^@>'@U"!J%8S*7K)\BXZ\[+_E;\K_Z!"D7_HRM MIY(O_QG)>[$QA]!BN<$CA,J7ZJ^MY4^P#CG@LU/B&0VZ !"L7LS;NQ%4=VJ9 M6V$\:AP(DAZ4,YS->L%W*7)12L22$=1">3A6*\7HNW/%' MG73H]#/4OD.V_0_1982S,A>3+ M10'X%0!>%H!?$>#E?%4 7K":S0&\8#6K8S5*34!^)2A?K O ?QWP_W%MU.FC M)S"65D -A4^>RX>*_J+!$8]_AZ_5_-A[U*2F]EF+:!8+@&[3S!&8QQI M%P*RC\3F@M-.IJ)4[1,HQ4$!&\/$1BUL>8_DL%@AF(IA)%I@)]Y]QX2WW7R6:#2+Y^7,I8C;4 M=\E2IHIRSD_J$MQF =QF-:SE V:R3BRC]JD@!\/M\7_'L#W@#8-(2O9LY6586J%P+5$T_JBJU;.)J.5>N M+Q)7,R;8TFD(!@6X9(4.>&UAP7EKHG=2*-F+5;+C1%P$(FY9'EYW3(0E)1#( M2WR#BV!3M5RE5DPB8B)0?MU0?EPR9P3GR[EJO2:BA#;^@Q?.U[NRP,1<'*R@ MVS:PVB[KV*0-P]_;T3YEJD,[/P?U:[$\5-!TBY@P#6%=G(*^$W[+!_8%AL]4_0D+@\Q0!XE6$PG+H+ 2*)&Z^9)GPF & M+!M;'V-[2MXSK.M7_:=U@K#)!6T'X!>R]7MUTH[,DC-0^Y**18QI":'/U7:) M[N(/.5(BQB_EM ;8,'NRWSGV=7+\JEE<#7?55QA^SM(GGX#%EQ+45]D5--[; M!L 5*S^N]_J6P[HH]+#$3Q]$\B/@J-/2-5[<^2[:F):V0*#4R@Z3F>B%*"ZK/ XI0N]YU.AY_CUA&@;!_X^+A[?])N:L-ZT'NVDY8_(BUD' MQ;_I#]@/RV3\-=;=;9=7+(^6U ;L\4S:7(57BZ% 8A7+L:4,[^WU%E8#\]LG MP)^\30;6RJ9='R.->UB-]$CO)?_U"5!YOW?#'0D7$#(3VJ>'F*I!CXW>/V5\ M(>B+R,# KYT"C/0VMFC(T;I,9H1TV8O^;5LY4ZEC.;F8=E1??I,M@K16':'$&LNXAIJ" M\NNT<5ZTF++/)F+US!=0"G,-:E\F7-BR#!Q8%+;\K.FVF&ISLJ@ M0K @UHC M:IZM O#U?$VPFM6P&D7 ?05PK^2+)0%X@? ; W>9EAT1@%^%:!4ZC> TFP/W M6EX6NN1J6+PLJM// ?AEU1K]T)&3G@*("R_V-MV1DJJ-!Q7?ZHNM^%8JY95L M50B=4([X)/FBH=.967I09R%%0U?,([X:\,H.T_AZG>%Y81/PE=*"*TG6\_5D M[ZMEH+CH5)5?8 X'DY(O9$LB)5"#5(B;!&NNLF3K,8"LJP2:%_UGKEJ\6)*8 M'HS;'(WDH^A8UN1*FD5N)DGEHVA2XE#XDVW::F=*W MXF>_&L>$LQXISS$[)7RY\'.R">[ M<)>W..O4;C9I=_;*N=AJ>XD*S$YLLPOW,V?KK)-6PI?8'B\)[3JPBQ;0:BP+ M6G#ZE-V)34S2KJ5^J3UYO9*3Z\5%-K?+ %O?#!U4G%P2&N6"6$7Z.^G*I7*N M6!.L8AT5O?76YU+K1CV(U-L5SE#A#,V$,_1+L@,;/BIKX55XO\MP9EV>(R=: MSY?_S-P99<@7(IR<*>-.2@%LX)K@3NG4<$=.5"[FZTME3ZE7;N=KGYJ63HVS M=:4(>W VA](?Y4@;FQPVWBN6 !ERGVGJ.4,K3];VQI]9TIWQ+DFJI*EVTS)Q M+NM5;['V&=UAR[8ZQ*3M UW4ZUFCQ*[J2DW2H>U^V*1$L^!YOV$?=F/"1AE_ M_5$LYF5_@W^S+GTPHDU8OU!5NL/F?=?D574PJT>UI;:JL=Z $R8S6"GO7VM=MLA+D[2!<8)S]B,=/*2%%LZ-F[$L3%+2^W0KE#\R\$# M=#9<&VQ[0 P#_\L:[+Y8-FWYHL.:X<&@79IF6 ZQ/!K1TH'4 I.O9)#X_9R7 0]0>R"67M0:=='3(&GKP[@OQF_"P MDYZ5ZOEVZ>I"QF6$U0]5[M//8"VZ'#NN_C,=G$)?X9U1*MG];>CM*Z7V" M39T6U%0J&R#YN!V4#Q71$8HO0W2$REZ%9]$1*FN %QVA1$>HS0*\:%LA.D)M M%. %PHN.4!L%>-$12G":C8*[Z @E.D)E$O"B(U0V2L\L:>.B(Y1_CUMTA!+U MJM:-::2@?(SH""4Z0J4"R(C?/3K;5U(=H_B?9/J8"$ ML#@$ :V#'2+:/XGXAK!6TMB-1;1_$L)%M'\2^)(8PQ'MGS8 ?Q:OS&8(9T3[ MIZS6+?U"^Z>Q6AJS$X,H>II"Y_K*RPIFL3, MII/S2]RIG"O(%<&=TJGACG: N53=(#:T Y0E7PUUDBG!)KM*CI ]?V$AJ S M#+S+>K1@FXM;';>BJQ.:/TUHQ:04L!637,LK_MYPE4T8OO7WY%X_=.%>TW%5 M$W_S>[C@FS"B*O741X#(Z")Q"9%F,M.[4>$V $R>!J!2-5=_P88SM'',^X/C M<"=Z:VO'Q0Y8N@;;*LOYXOBN\DO#&RDM"/RUQE$C^#[:-PJDZ>?Z1L6;0DU& MIEAOJ?S7VD:ARCA/VRCDZ9]J&Q6ITQDI-*H91+61P7?_:>E.WU"'VY17\J/Q M\^*4:KY8Q@.#KWB]TV(AK^!7\6JDD:%CXVUIQ#"F>@_FJV?Z;EZ=4@IE(9>' M2FV\9BG^^]__%2O!.B8<>49@!&0<% H5>1VRQ2J\JFV8?ULU!NK0\54 .*Z@ MOMQVD%58Q$75\R4XRO C F'LG'KJZU8$3K'V.>RM> ,=_MT'96;Y(;M6?UN1 M\Y61 ZZ,G>Z\@IP>0C&B:ZH2H'W[_[[]S[6E34J3FW6*2$Z=:=D]U8CEU/&O M(CB"<(/YKVGK(B#177@:T,8)>)P:7XR/ >5*49,C2F-$V9A"6:.'-^E4%J C M@7"S7:_/.\.!])@B9"LBN1#/%SU,Z<4THZ# [,7R]ZEVBBNFJ MZSLFZ[59=6.3)3NRTUW,,VFAM]K=+MS!(@X[O;O=-#ZV9 ^S0.WT[';#^5CJ M"]Q^HAO7\G7L13;CRH(>G#XQL8@..XGKJ5^J0UZJYN1J8:$==C+ UC>#>XNC MRQ"S2%@9_!JSJ.24PK2N!0+C-H599$RC2ZL[-;EV7%E0!(4C(1,.T:_(CE*N M4DBH&]>R1E=W<[EMROA#K1E3(5Q?>>VN\TT^XAJ -U4!WNY)',QF&DN8Y@%#$=B(= MJ ;$<7/2E>7!WRI^Q*8+K%7(7W_(A;"KTD>-ML(F1_')U;'I6GMFV1\L<%5"%%$J6*^$N_G5LHK,W:X&D.46?M8O=O$"A6M.9I8(6?,?:J) MU1=:U3Q:36[;6(E$TLA'L4M@*Z8*-H)>-9I>BD8VP,];!SA"-;$3G"=%Y8D84$8UL1",; MP4X$.\D0.UFO5)>45%[\?".;R64=9J<'4;HQA8Z;51=+$[UL-N:P,UH86!RV MX&,K=S(+U$[/;C>ME41[BG7DWN+H,L0L M,E !7)9KN5*I*#!.,(NL:71I]:B*7C;"D9 YA^B79$>N*HM>-FD5(2,G*N>K MHI>-X$;9<&M^A1M5ISAX0;=9^Q(SPVV M12:3S6C<=@.W"Y 7S6!S>E]U86Q;&+@FG"= \M^ M0LAIP 95&"ALO603!SO4P%+AZRYP70H+5L)2TE3;'N)OFN6X#CTO\NSI?=IO M!"$%2W,LTR0&:]2$2_;,L<8XV 9'?\7_ "0?B>8Z;#-*(;_T#C/3TY,^50PS M4LU3 \C:*$6Z_[1TIV^HPVW*D/GD?LJ=4LT7R[@D^(H7%2T6\@I^%2_Y&1DZ M-MZ61@QCJD-BOJ*A[Z;L*:50WG+R5NKCA4'QW__^KUB=TS$)S),-(R#CH%"H M7.V0+59&56W#_-NJ,5"'CJ\XRI%4U^T@8;&(BZKG2_*?4O@1@3!V3CWU=2L" MIUB7&O96O$\-_^Z#6J[\D%VKOZV )C]RP)6QTYU76Z"'4(SHLZH$+*7]?]_^ MY]K2)N'XK%-$",*T[)YJQ/+U^%<1'$&X808?)6X@YUUX&M#&"6A%C2_&QX!R MI:C)$<5T-LH:/;Q)IY)\5ZI=D/U&\NVHPC?QN11H9>\VIV( VLBN5$5@]Z+& M]&K*V8OBWJL O)POU@7@5P#X>KXJ.F>LB-74!.!7 /A*7B"\0/@- KR0K:L" M?"%?E@7D!:_9', +X;HJ'B_Z*:>R*]5'KIST7!9??!&%C-R27V9;JF)>+F:J M@$(ZVE)EI:/98NI^K99'C"'!QC*->2&QK'9#2N8*?R71EVJJ@K^QB)*MBDX) MM*42HB0[=)%J49*!QA,?>?HVY_0_"FMM>)GEQW(LHDG+7C@ MS.$'P00WBS0VDPD*$V!3&6"VO4E"* K#(.,R,;-8DC9)F5"W*G'Z@EL*$T(0 MC&"7PJP09L5ZFA5+:R!V>G:[V7PL:3U\F5VI$E"P%]J6 M*@-Z%)R(1#]&N-8(I*0FVIEBU2EM\()FD1,G*@ ME7QAV5VI,B#V!3/*AEOS*]Q(R16K5<&-,L&-E"5SH]2KLHEUI?I2^D*"/:KD MO!QK4%3/EQ?>HBHO77?#B27=&>\,1-_TFHZ+;8%4@XYJ$*SRA]T[ )S$[0)$ M3!C:@$?\]CQ!]R&B669+>O94VR4VOD+[,V"C!M9RB':YDO8(+-6E"1/PR+6M MFD[?LEV5SO-B&1X"^*\_Y$J^Z ,%5]+43=+ZF^X"EJ_V@#YU"/G:-F%C']:RZZQGF/AY'RA M )8(=@*BA:VRIC36:MM6C_[VG1@N8BX,.M)C"_G$CH,;WR,:Z34!5&P/V L- M((F_O#L")<8( X'%@ZN-Q69*6LU.'''7<,(09$ZJHM2>T#^%[A MK%T"X/I#J>65 /,!UIY)'W@AF(-KNC8>8\]JZ6W0 Y#[X+%IAH<8QQ%*[0#? MZ\!PDHM\"KL/PE" 3AIL3G4<2]-INS?:C?"]HPS.&I0+6#4NM$F("=2@61T3 M(-)"6O%I@[)8S>MY01\X5^MN>7VIJ3H@9X Z+*_3'8% LKW7\FC M%1WDOOU;+(@.JO:![3*.W-9-U=10&]?--L(' M5Q3DEG]M-0:HTC[V+,:F6P;_1G.EISY:-C;+A;.WO+#M*D@5(% =Q2)5:L(& MI5P*WI@Z"KDKT-%A":SS;DS28@M8J0.VC$VE(1W%@2E02EJ>Z^@MXNLZ\;$^ MI_:!W#6QP2KJ0K"T7=#76NH\RE!:SFYVC/X.#-JP.AN!L[/XZ/;!)J+6@*F3 M %]!N7-(>H M/6Q$O*>WVZ",@S4:SM0BP$M8(T80[1HJ:R28 );1"MZ!?0-=X#AWQ'_-?Y": M2,P<5[EG8%OZ2_Y[I)4P6U!@<'BF;PB "0.6,]5<80/D57=L:S#3 M.JF&#.KDDVD-S+#C,K?\\;FV_DI:6U2WI?OR@%+YG^& OCV^CP]+'!M]PYPU M(OY+^9LND\!B>K$=P 9/KG980V3?F#4!!> /8$?^[ HI1KF:CMQ(XPAL84,2)(ET.E 4C6574#72G$L ;K(&WFZMH]02;% M@+@IB!7'G.80"(QZ,6FG7'Z%39WL^V%X-MZ EQ)R5S4[3)+%9_A$+]]8!U_I M+QB*^T"U% M/]I5*:W]%HLKJDB2W!8+>5E@ZAIL45E"KD2JMEC+5U=4/4X@ZB*W6%I1(84D M66I)8.H:;%%946&VQ+987W^I(4!2T+6I;SU;6W5XOK[W< '3DCQ[B0,K\K= BFHKS@,DV')74(6F@)SNC^ M@66GJJKW=P(/FK "!@@:4UA\,<4,8L!B][PJ4RMM]+\,_$ZPS5=X G@S>IO_[9[&L9&ED MI2S:S9_:8GIVG)5@R%/$G2U<*_65^@FOD/AODJY M'IK=OC*I=FKYEP*0(M0EM*P3*/&QP5)8K,MK7IS RXQX.T(@PRKX0WVQ7IYL MJ-D"%[+@R0@N]RR;-:0U?R%]2E:J;+&,T%4*71E^]1*FA^'U5$%A@L(R2V&I M\V_@E;]K>MWOQ,+K?L*[(;P;0F-=>^^&?U^8D411SB7B'Q>HD04OQPY,3^M] M,)QP+8$5PMVQ"E5<($86?!\G6!DB63DB;#1AHVV0%^34,K?6,#]*D%4: ;4Y MKH](8:,DQ=>:.T$X7?#RQG+_-2TY89=![2P&@BM60$OHL"ORAB2,*/-P"BRH M)O!D5:Z1#"$*U=(8>QDMHBO0)F'?B4 ;@39?\*QD"&VP$N=ZF813-+H)Z>QQ M:!22@T421M^"0;%D;TF&J";&9Z5SWC]'T)&@HY72$7./9(B.EBY],NHHF:6? M>Q()(^?8-F_AW4I7J$:NH)MPLJ6<_UCJ^I=3IWG!W9!+!8!S(J>Y6;B[]-HQ M2\7=I5=\603JRJ *+ZV1]P:C[M*+NRR;[2ZY),M"<+=[2Z[ /12 M<7L2J43M5*1"K!L;2JT,O6T8MH_3SPDV#A-0K0>=I MHG,)_YO.0WE0D77UVNY"OKVP5J$_L^K677MBSW:5NTLZXRU5DG*%90;!IZ MLV6Y&]O"/6[RU#C:>CO64IO%=^/BIG3BB+!\AC+Y_-S134_G*TY7W 7^IC2; M;_GXFPFO74D165%9S.A+A/UFP*T'^"O8;P:S^I:/OYGP^X'V(#+[-B_C)U7 M6+H',1%9E0&/H5PH"6H7U+[FJ7T)4'LVO(VE:EX6^7UIR^^[ME73Z>F.HUNF MR ,0.7XIXQI*4211K=XY*%+\WKG_N]B0]UHBI\CP6Q7KE 7K7+UC3R3X36:= M19$M)+*%1'Y?=KQU-7FQ^>*"8C=DSR*_;V7^=661))LQQUIJ\_MV]1?=$,'Y MQ>;V)5A%< .HKD7(+QO]*H3ZU8HG(>!(93XGD-ZXYL^ > MU8QS"R5?%[Q"\(I59T>N.Z\HKL2!M'#-NIS(Q9^,.8%7ZNOUSU"JT/&N+5>= MZ/==2^-F 5[<(A!AR_*:!DF&UTPLPKH(1VT"&UDT.\E5R]--%8&TDSVO643: M2<[5[.%LI21/59@%QD[VE6818R>Z0[.'LJ7*@LO*)O,7N$K%1%A55!QE_-YUP#,I[D]LL>&6,/A&E= M4];-O?S*LCM2WK4>BN8[D=*V!*:E-ZX5(JDVD#C&)K;KP:',HG5SM MA$^J9BO\0[-Z?8/@8QXLQI9<6#=]H@?OVKIJT#\TRW%A,7JOZ=D.'K+4-SQ' M:A,"/YFNK<)0.,5JX\..:WN:JUMF, .\Z7A:5U(=R;:T M)SJ,T^^JABNYEF1YKJ.W" RCV[!NU<;JF_DY((\-<[:ZK+=X>C%@QY5.5!N@ M4I1S$O9V!_!Z<#SHIY;B*# P/TAY^M%"=9J &1S<%3 AQP8&=@#'*"DFYI- M5(>>P1]RM9PO2CW_60 WJ$V%/W,4%^ 6PAV&+!:\0>45%?:(QKI-0%#V(+D M>CX2_EGGDXBM@[V)G[=U. E=8V/%6]4CM?'#F7]QV0#2-1!YVS(,:X 81^4 M4BXNWI&ZNN-:-DHZRHALSMS:@'G('/HJ,)>V#GSKV0/R)K8C_:6;/H(Z?V\G M<[0S0H_MS8_<,0U%@YVK?8=L^Q^BRPAG97JHZKF6_P73QNDW7)BS9R+2G3^# MWW"'<.%/7+IK^XOPD8-M:;;X6KF6EZ?>_6[I+Q/&!^%BM^&0?0CY?U.59[L) M/.9I:P P^:=O.3HR^6V;&*H+9SLR)M?IZ,3^HVH3E'//)8$MQS:Z:+$>>1!^ MG%7)@;4'_WY>BZ,:(=N6DI]Z 5C ?4ZXTST4\P4!Y55@MUS.UZ8:*0+R@J]D M$NZ"KZR:KPC ?QWPL]S!I6KH7$KC\O9>^\3>/TBNF[;-+S+75.T;=HE?_M^W M\K>%PJ!8SU9BUN(N60V,.&*/@*T9&S1NAU\P<](8,D\%V)[L _>N_>]_ MFI^\I9YV"AF#P1J13&T4#NPLQ_^=3 S*8HE!KN5KI4P1 [KLXAB?M0.?NKWW ML:'Y#GM< D8D>PEN?HQ0"I_G@;-4ZDB"#>[KMN-*G,4O/*M^=;(_F5LE,UDS MRXH&+^ID/G0VI"(*K-27>%=,X&E&\#3]:%HM3+A3\,EK.TDP_BNB669K&N=? M1\)9,7TDE,N4.>9>+-7RQ<5M>OFH^/Z=S8W$L$01;.X$JXRHYMHYNE6 M>59]ESU[O+Y261-%?DD7]Z/.XHW#WRQ+DE4+C'W+L]VN4.FSQO_7D\V#2C^M M\^$&H6*VN?O:,_'Y[ELL/C5V&>N(Y%)C%KOAM0C>8("#U?OTCL&DC&(3AI3< M 3%>B-2#V;H.3U:_(Q)Q7!UO'L1>;*H.#&69T51EUR9FR\G%)G.(ZE@F_*CW M^JI_E\(?T:$W'#P8H$=LJ45Z^&,PLFZV\3(/O?E [T5@.K__=,HN-+#$D4C^ MBV80U48*ZO[3TIV^H0ZW*>[Y>#6XG80+"SBHNKYDORG%'Y$((R=4T]]W8K M*993SMZ*9Y7S[S[(?N*'[%K];47.5T8.N#)VN@NIS52,B&U5ZMJD_7_?_N?: MTB8E0,PZ1>3V!K]9%PV+\J\B.()P0W\&N\[0EG;A:4 ;)Z 5-;X8'P/*E:(F M1^RLV2AK]/ FG4I2=S?P-IE#693/W1BG]5FQ.GH]"6^9V:1OV?Q]TNG!;(N[ MR+%X)K<>%SFJK'[0@%I 7 MC&7U4%Y(VNZ'0G3]TG9G0KYT;WMIF9SU!3N"YDW4#!+7@TOE"TCCS3H"",+? MS'/?',)_+T#AV]Z,)X !_DZF^R9BQR*Y0L*I_+/+@\O S\)._HHY6[:7>KUC MX4B1M?L=]4A!N6Q>[Q \8:Z /6XM2F2&N' MZVE3/(+$:EEA6L@GFZTF O#11<:@'TW[Q-<2U$TRVLWE(QZ2O6XN18I[OBARKU<">#E?J@C(KP3E!:\1O&:C %_(BVM,@M5L%."+ MXLKD2@!?RI=* O*"UVP2X(O"0[ 2P!?S=<%K!*_9*, +$TJX:S8*\H5\0:CR MBB9[KPXZNJ4>)W8%=_ M:UC.EY>0]R'094W1I4R;" IT$>@R([HHRZU9+=!EG=!%Z"Y?-[4R!1MA]PB[ M1_".[(J:%<-&6$,"B=*+1,)&$D@D+">!1*M'(J$3"7OJL_:4J"JZ="=-]EPR M&2HK>C*A]+!2D.L"399O.&4(37YZ)N=.QGM17,/DJH3GW! M](_RDE-1-ZAX'UY)3@;JE>DV@[C)0-]M]*CZZYIH*W"V# MXEH0N+MXW%VV1K="S_(]ZO*KZ.-6ZM4OM+% M:M,P9Y.\ME@+&GG'R+*_'X.2J6V2,>@P-?LXFL6C/%2M3A5H1/HN@+3>C6[S(1Y M7:K4IZ;X"7Q=@;&\FEUFPF N5:J"OPIU(#OJJU)(?UP[.4LWK8'N7?U%-T20 M>PYO6X)%!=+JC4LO"&:\[2%/S><6OFA!'5\/HJ<7 K-=XZM61*!F24'V]*)& M8D'X]()@MJM 0.,B2+^<('UZ42.Q('YZ03!CU1A1>D,H5L+L>$]V%/-R8DD" M*0+6&B41^&VS+(&V7SI>@HS:.DD5 R9;E M-0VR-)R,H>#$,A>+8$0);&3!G$C)U4L%$5W8%*2=X);('LX60MR"+2*D!]%8&TGS;_,XFTDXSX+"*M7*T*3KLIVL%ZJ+3 :0NEJ>;U M JSHI,]W/JOY/[0OTE<7@H77MKJL%OMB5C8'GNAF"[LZ%2NCZ[@C$GGM$\V5 MW*[J2BW/AA. ST0RX3VI;7FV].RIMDML)R<-B#30#4.RB69U3)A"4AWXXX68 M'GSL]VWK5>^I+C&&4K7XIV2UZ4@NVO@2>F<,JR/!+"=8JU\JRCD)*_3G),WJ M]6W=(2U\PW\./L9&W)9JU6!(6@!>\"W^4"X7@UZ!,P>2? MH_<;PB=4LR65P[EI!HC_:WYI)Y,6#)F%>WSG9^9T+<]H2:;E2DT"QVHZ.E _ MG*O*SIAT"7SU0B28#5B):]D(U+;G>C;Q\2B'.*5*?6)C\P.U0_ 11$,?SW1' M@D%AE);4MJV>!#CR" CL, Q68226='*U@[MR;17FRTE-SZ4KTSP'N!M02#"[ M_Y"G&D +5A,X)AW M:2^!\BO.C"'R:?!93K$?M$UPF?T',F#\[ IOL&D3E[: M,8<^("(K@-]R4EM_):TMH" -8&7#F[K+_LI)/76()P'4V]--NH+F<&3)@.DV M0;"\(-G""0+<8 OP>EXZ-.D*$/ /YTOYS8..92R. !AT@;,%Z*;/GY M^45:)%M\VFG-88YU.+D6K(*"=E?MZXA5E\0!2&E8LZ:Y#O"8GX^'<+()?.TP M3 =L4MFB*?]2&091= M. S9"7%CW Q)GS/*X"'R2C3/)?2Y8*"^H2(#/_.0 @''@3+_?WO7^MRXC>2_ M;]7^#ZR)^2^+)>#:Y^^2"2,CBFB)U?/B1O_ZZ&P ) M2K(DV]33V-IX;$HD&XW&KQ_H;LAYQ 4<%%,=BQM=EHQ@$02(6 F:'X@K PZ< M"='6@7LX W-$ .]%N\*>2KN' ;1/;SN8@B7."RP6HY;[([Y@>*,6,N",:$@ MQ07-YQ.2L8R,!8TX?!:B^JPQ!-0!X?><- D\,$U2H DI!5LZCN[A-UT[?.5W M47"''Y^)UWUF+E%$9A4@F8N( GB3$MCG5.D/II<=-?MVVP))"PC2D0]R@( ] M^:N!)R T.()[0,XCIU,O;B)]0?8^CAE1F+ _R88 CGYI_,1$?L>"C,GIO8_B M6_E\7T"^#K8A@30B,0@"2WP$V3^%TN$!6:^1%3,?M2KX$"A \ CU*%!YB,ST M=& )FG9IY-XB@T)R:G"$ *,8/3MU%B6 B6C3]! MJ2-S,=))\4$57K &Q#,MR@7BH0$1:MCF.2/-.DP]R MI\ TN -#65\I*#'("HN'M S^B,'3?D$H(6 I$87$1A#[N5RCXX=+' D(1$+ M.@$8""0JPDKPY5B%O1'B\WCHX@#09 +N!"#]:>$-IO<\ -R#%92.$EKM<@FK M%5)>WUZD;&%R Q9,^8@'A64*7\>-=K)=_K@X3P[?Q4)?!(>=QIE+T #?!#LT M1MS*9Q/05#A/8BKO"\<]DI.7<8&[MWRN".0"5*P!3X@/33?R7GDAMO6?(/11 M+ SU0N.)!8+^7.Z["*>K<-0%SB79&/'-0RL"%! -"JD6$1;/O_OI'_!#L=(% M.8LQH#3ZZ/D)B/'C"85>))=4]*C1M9MMY!U3'?Y[DH;Z1#ZBW,RI*9*3G$:3DX9C=Z8FN#,SNY5D=S2U\"BS M1N!8_OCNNV^1.P4*SWJ%^!-O/ FC>,R"TGF,\I(F(\@W7/T$\+!:SB)LK.G)FS'Z538\:BO60$4@9BK M#,'_@:?E/O-1R^Z7[]+1.*?4IJB1"$G(6(R.<#6K-'AR8,J#)*-YBF P3'J% M!7TV#[B1(F2+"&V0UL<(I^0/4((L(7]'J 1A$LFP*P>M#=[9$4!EO;"/0ART M=F5]2M;:%2V[,$)PAB;)9S317AD,V ^+XZRP2+UG+#N2&[2E2=A R<-#X8T> MND+#**#GO?L:Z>GF?MBY/54R]U&^M5 M>YH-N[^P7MXP?DV,=^@X,?4G-W:)AOE35[=3 89AX\<=W M[7?5,J%G=ZK-\NTM"DDOC8D\D2+P;39&8.4ADW4(QS)L6J]PS+"EZK96!A8, M+*P "QNL1GX=;+S[B4*&8F^BZ=34)H5!B$-%B%L700A[+,_9\0_ M1XM&M6CA-&RGO5=H@=L*:T6'-R\23;NSV:YJKQ<)I[]?"N,E(E$>854=4+>D M"RCI 3>N?7=6'[S[Z6S$PAM,'Z+4KY,-]'#9M.VX[0Y'B[='#FRTR_8D=JH! MCY'MUXYV<3C^L$:[- 9^X+*]:5]NC:VT-J&*?U-5*EDB2[_RQ'#FIO[=DT=R M'R3D[)[6K*C]T);5W5,] ]ZW:ZU.]T-U,W*08K8!!591'XLM:YXGQ:S;J-7[ MG0KE;,^TS,YZ@C/J1Q2(+%<_QA3>'3=OIQK5[JZN:]1:]?XB##(RO3ONW4[) M].XJUGZMW]V(3.^9PMT9O?I>*M8/JD:8RF2'?LA"USAY^ZTS#TRH_H\U;S=CNJK1XD[M9[3,*[P\U7L7DKJ/%VX)Y+: M[=;JW=Y;VE1]73__9S3V62$G=E<: :^4OGN9)Q6=:O'FUU*Y'[U*L>.7:"^< MMU^?W\VS%(W/6W8]HZ42=>$UC90VV$BIW;5;INY]LI4>&Z;AP+8Z/9AV/MM@ M?-]N-PSCMP(UIIO/EI#&-"DT2/.&&&^0QB#-FV*\09JM27S3N$^O8'PE;5>6 M1@]VJC_12X;Y4N]]IP:^ML9,+;O:_=##:->VQ C:*=&H_.P(VZ,^JN&G6W1UVD?MUT&T*C^=[8P(WFV_F!'X+F>VGNR%ZHPGUK MINC8]?WJQKN!_IK5JKW]DPAGSP1BS=TUC4#LET"(YIQK;KA:L<$P(Q/3Q:U5 ME41N2??C[\],R-Q,5]7=3?%=2_7.&^JJNAYO9F_*VC;LO6]=LC?JLAO)-I)M M)-M(=N63O=DXU!K+:S=A9V)Y[?L@2I(/EA^ZT9A74LFW#Q;A[AE^550?;GWU M/UE;V*QUFZU*BV#W0(7MGJ;:2R%[41N46K_9,>)FQ&V-F-;!?F*5EDOOE?&R ML]&S3QRFR?499J%2,2T;1T#17W3!!,/V*!BV_E:\>Z',G'ZMV]]$=Z*]4'-[ M%!@P\BN,,:?6K2_JO&GDU\COKEEW3JU?;VZF$_I>F7W;MN[$YG2"_>!8DO T M(1,O\!F-J:J^Y_M@R.V3O78PL-#HU-J+3_TX1)VU3ZKI8$2M#Z+6,*)F1&VC MQGJW7J,$41/5VJVHUF4ZXK&)7E4;O=ITS^JM>%=[WIB[A4=2F>#!.H('1OQW MM!5O8S.A!R/R1N1W$/';-:?7,)&W78N\;>YH^7TP1"NP-_>QP?T\@-F3_O;5 MGTV_!]JS B5IQ'2SQS!4?;:]D5,CI^LUV#J=6J>QR$<_-,/L=0>'[,\\XUN*>)=91VVY;0%R J7EN-)ZP&+Z81M91MV$[^2QB%/"'OD M+#[&%I;'^!N];Q+[,"9@AN5E'-_#K"&[BV(ZK,*'U[NI.+(CS1^S8&?9WLP) M+-L^VP16J#^$U1JF-$51B$>LX5DGR*2C1D>?POQLMOD<>\ZI)S&\.AOC=/T% MGQ;'GIQ8.\7V9QQT\CQ@4O"O74FC"?U)[SP.V&.4I2=#_X%[>E-5080:4MEG ME-YA2WPVA_?=?O=/L?I^F80G=]4J1_+]7@LP@6 M?^)C@*YXS()2W;R\I"E"/&$&\TO@2S'B@B[&'G=CSA '!X_6D=.V6VH)U&8Q M!H26QW#+D,>(;C&_XV'&"R&J2(MH*EO]UVW,56_L6;=./GI^,@%E=4*X-:7=&EV[V4;N MP26YMIIUNX&7RJ>?:(\N/>_8Y4&P,,?P=>>G/-D.L-'2(%3,>K,Y>T8*_OS[ MWTI'OLQLPDMUIK%,LJ)!*O.&'XL39=@0WG_"@GOVF*C#6QW;Z14Z7Q'71*+Z M=LOYWBI^)94_/4]C]G"L\:ET:JRXJWQNK+RVY%@;S6!I.'9G:H([,[-;B2YK M:L%W9L&R&_[X[KMOD3M/A:S9:OA&I@*L%#294XX<>#QV/YJS5@ MB9_4,)Y:O&7$@PD9;#Q,LEC04'HMNV-^0.]"P$:S3CXNL>Y'/+1" %3NV58) M=+7GP]M&/KA#,:(9$!_S) M2L8T@PF,8IX>/M->Z49*^@1#[\^W SW[(0O>- MVH%SQB[,/3+O<"&#(=9XKO%&YLK(A[_G[A+A$\3N SIP.\5DXZ@?MJ/^E4N' M&F4[B,!@ 6-I;'E\(-26TRY03*$Q0)-Y,C(X$9036!=AK)"^-PAA>$KTV,G/8,O-E)EKB)TD&-A@! M#:FAA+M9+ +$*$S@TX,9GZ0LY=*QRD/&54=]]\/"GVNS@O^$BU&S6UO%/M/J M,4=CMAK8V"_82)["C7(XIM$L\O^,]GGS8D2N3J%(YFLCQVG5G'K'2D8L%G)6 M,H2+S0B0.(K ,>2B#R.D77^Z]@5 -(K]Q/HE][6^+<(/'VTC)R\53E9W@B[.^77+CQ&3S-&\L/TWH"(^HF;)8F44(#Z<6*QX5!F!Y/$ M:HRI69, \\T*F75:SQ/:*PUEZ<;N1^L HWW7+[N5P>#Q@ M 5G:R8CSU$H!$Q(,:$1A1[&/%$*^2>W*+T&Y V, !8@0_>#BX\6&6E%U+*P8C=<;AI#CG#(F15$&;=^^G(^N/B/+$MJK/+8TOP M,AAS(FP=32YJ5C0 RX@:[<.2PMA@(/X8^1,Y"!A< !X9AU_"!.PFC B,81G& MN" 7,\K>15UOK/M#MNZ?6.:GZ;SLQQ'SK("GJ33WI6$&F@%N;!X,/M:R_2)N3\>(+KD MV9AL+!+#:7$"(8_T0%#B^#6B6<()'[%@"+9E!L-F"?P=\J$/:C2FE P:!SD] M/!@>#S.*71>D3.+H)F9C&$8I94B$=6#B*'P-_]9RS,S+*8!FT.8T2/S6) +] MS"0?-#848YQQP[(!8 V5?&!B.HSY!M0[ YBF%*TASCS26(Q!?1W8_LL,O^%G MAO$GY$D4QP(09<(4P87VH&EOA3)-SUC(/!]D6G[ZF;ET'S*'BFSG3O,]QVF) MV7V(,R(C6L4D/)($WBMPE3SS1*Z8G/,\@"88AW]-L[%&%,*3QNQQ]CDN( OP MWAT!'-&4<1:',/RBSKW)[:+&118/P(M)L18(<"*9/:6F!?\NQ M^@ROL/"QT!MNP'Q8/?>PJI#J,?/4=,Y*2N6>]XQ.*66?JM1@W;8XSO.%32&; M44TO#CQ=/&DW$CA)V[$V;SE+75& K$)61%" L('O(5!BJBNL']14@RCTR%0% M< PYV7O"0$QX?.?C/@\MRWNNMCIA]3^I)8]ZC;ZF!=%$UK0DO4JF];\*0@#C M*=Z?\IPX@9!D"<.044_-H(BFRP0S=!MT4:"W(B]D]4B>]J3B1@,3!B:66[!G MN6NJ;"1PQJ0QQV*Y5\8)%U1M-RR9 Z!$6X@3,.G62VXBS -XE;)1@ M2(2"MXCF,0:?GEZ:IK '"WM:IK#'%/;L6&&/T3XOUS[[IW;&Z+819-=$SRV% M_!0QI,@#QT@(V$3@:89A1N5#B/>YZ3K,4O3RRW>Z\%WR&?7[P?YURU^T8K#U ML)W/!/=K(V$_IU$*QE^8C0?"321-9DG]PQ-9*I^"J4E&(@O<3$8UL;B*Y\_Q M^!B#').1[Y+-BN5->LJ)C**>RP=CG@D,B,("%W3ZNG6%&5(803AU*<7 Z7=; MUOOSKQ=7IQ^HA(N-15*@=/]_)4UYKC3E%ZDI3_%;0M/F#^K5,70S$#5<2K=* MLY_276!HY3X HBKL3N8_L)PCL=QD291W@!Z(&"@\ VT!C%)0,!?O(FM:QH.> MT.PH#Y(Y:@A?8J!*.!ER"(UZO8.1(WA,"***3Z1(=!;(-F/3#T M)8D_]$5K,;FQ!&Q"PQZD2FX3U=0G"9;N90G(WISOP,ODUUR8+5S$\B,8Q)^Y M\P%3B55Z)+ZY&Z*QAV)?%,5XFBL@,W\6=^CS0\%U6A%BHD6AN^K=,'^-D.L3 M\AO"7J!+-L 32;RXM2#BCZ+-'ZU'ZN8&;_% *$T#JS>C5_;6JREOOXDE)>*N M4]Z*BC(7*"_RJF7L@I83PANLQ>(<:1%M356$((]4^[&;C:6W(WP3>A;&7' % MXG>8:I5(28JP*B,*-V0)%Y@AXS-R^TS$6\?L5@MFS]DIF/:K-MQXR*Q2LTJ7 M.1J?9S=X*!H)DAWA@5;%5DQ2;"WEUU0U?6E7>39@47EWH9V-Z*\[[>.<\G2( MR1?A,"B@CTY=Q>GX$F.L]T 20!;G>UR"F.G&$!A4(H])&.#*VB);>4)LP>H< M3F+M,K4EZ^=\Q$X*]"$'#1"-?=<:BBU)2LY@:0K**%4;;7>X=Y7;C5[Y;<)S M2D1B,@/$JA75%#4P_GA DZ8"VV@&QU%V,Q)D6CP!Y!$TD;Y+:'RHR:1&&[-_ M1=HN*%(^>,P3-M2JQ*9*8R*.$UN0&EK"!:W4+&+@>V+S.Z;WXZ]HP=]'\:U\ M,NELO$YJ&P-0 (;'^*]&A-AL4!W%9'\Q?6?7MKY%M$E0(X30IDXFOJ!_R,.< M+;D%7#A4O)#_.=/[FA2PG8449OG>C^^NF=?K#9N\>]UHM-SK5KOC7O=[_?IU M=^@V.FW69?T6!JHP/B3NP&RZYN\9RFA*#@5,"/P9R+\^^8D;1$D6RYO6BUQ/ MF(.4\=<$"TNGDR1'H]3*20523@=@%."NU2U/K:^^ +I%B'DHF9W/S(5[>NNQ MM.V(F,D?)E$B,P@H;8VB?\K$)4;#(A89(8DMTUS$-XL*1UB-089V>9!A)"95 MB 5V.M <2F?;!2AYD(8V17IJB"C@NP-4BL@/SCVEGZ)'JY:U,L 3SF\%52&[ MX=*\%I0H ,5!9V*@PSR-%#'Q3L@2[GK$F4S9$4/1+M%;\J$\27J!>4AN:016 M<@\6<:5 M).Z=W'*[T6))3A#MH7)OI<4R;B+@CM4)C)Q9BC3:XB95,$31##& M 9X1D/,6HT36'4;XT!^AQU+C.I+=1*8>^7->^Y2!^TABHA3J? G!6T;PN;2PRS'KG^?JU#4\JJ#.B[:J34IMN2E[(N8;_$5X KXX!P5-)N MM?) )@=0>U0OSB$XA+J"9P)P$6?D#]REG5,M$1;49ZRHUID(""6PIJ@ UD-3Y-JI-YVN\RKS:0G6O\R>:H$]I2@F MD,QI7FHL'8K?^ PZ9M77'+X4%N@3G'TS56[S]=N]RF7V4/G07M0="X096-,B MH^ =8C):GBY"J%&J_-8+YX29)WQF892I J6SD<^'UCD!*T+AY1#P"-[Q7F[[ MG)U?RAV?#S(Z@M\OZHIFOO\Y_WY-9;,)5Q.>3O4=*L6-(_K1,W/W59$KG^45 MLN+JLC+)927?IP)T)7^^*O]90^;5'*?BZV;8$MNBS1[)]?BEG]?(DL)FO=(U560SMQ6CAIWI9.BLC? MSB?=$LGVV#PGB4+1D3U1R?(!O^-!J3TG9D"'E*@N=K&UK.Q!_G81QLCR"%%, M^9#X9E"_ 5EA239 %5NLF)(0^(G,\>9>39">)/BK?BP3[<3C<[E87O)=9 &+ M?J<)61%BJU510M*%]^(8T/TJBD/?P23<<^#0-(C9UR@'0H;V'WY+EP4 M4F';G"6"N04NH.Y=/@!X&LZA:>.=9_NU3;:?R?;;L6R_JB'U"4=%;;%'E/ $ M[Q:)R2"W !J(@#JJ"'6+B*+@90;K0HZZ4(0B,6ZB*V!0-QB@!$7[K\R[$1VT MPVE\Q=V:8YD_4*J*I7,(H@040_ D](+#A9&M%8P,D4 G<15SNR20KH2A/G8L M(96KL:WJW<^NOU>HZ]0YO M7[>]IG?=ZO/A]<#K=*X;36_0:G9;K-$:E()67\";OKBXQ+WLB\(KN>YW>JU^ M;SL!JW<_(5'6Q85M$5U60=C2J%2XZ:^/R M-%:^+$3H@,8BPJV"\K4'!Y>?;#S7A1:5R^#Z8J<:=('S3JT ]Z(A3>>9793 M>_53$5\GOS2BLSHXH!W7^RDI/[;PD[.0@5N+&CB,T@+.<7L4-T$\2L&( M\C M+5T@:%+TL1T7(-Z-NK(A%.'C'0DEB!06TB/468E([&'":;1,$/[1^5*B9[,LO.$ M[(PEUKM8F379E>H4]]7\-(#/),;H'-6:6)%C@JE?>+X951=@;,^S3L6^Z2R% M_YWW9L"CAZ0I]0ENIG*7Z;[2HD9@QI";*B@OD"?/W$##4%8=R%H"6=%Q=OG' MQ:=CIV_!K'@,*)MT?\D3$@XI"50HE4CK& M/5J]Z.WB^&%NB3,B8"Z#@@6Q1; P'46)'BU]$3L%O8H4.;>Z;R:QO. _",[_ M8;H1141EHEE9%07248P*;HF8;R(;_@V4CLB%L#PN4!T3H11TH@H!'O @NH<) M.7]P^22EC8'R9WERXKTO690+:NFE*;D=E$]'N71AI)7/2R:!>Y5PS6M#H0L9K$W, _ 3EF!KF9HU MR08!+D=14PU2EF"D=A(%HJ8IOY+GK;HLA7OC""O<1&58Y?$!:U<"YK_-\DNE MIX^R&,\U"ZFT/0+/UHOPUV$011[\"RB;CF#!W^)%BFT3\^2T '0Q\3?N&\/G30DXWZ2$%J8) T8N]WRS @8J4OO1Q(MJ%ETC6 MJN' !? R-Q79QH\(;+YL08[T"WLA3QV.^8W:;W:E%4 9@M/M53R ^4<:$$;? M@OQ$O;+JU:A0[:30"Q#;(U,'[BT:3< 910!EX@Y,(,=-:5]X(6(P .-2[<#D MQJ(Y%1 \H=3L&@SL. $OB8O&@.H:NDVB+1BL)9!=*9V@I4!DJ1?4@*,$%TG= MS/I7!.:@CXG98@]0M1$4![""YA .QC=R[!3V8<@B& N:%)6+W4-OOC3VY MG,B"H!IK9>IQV1$3J^%R,QJO4W5SX72#!TWYFQPM=)F&*<+?HV@L(Z$!DR=7 MR&^Y4G:58,Z16:IUX.$-NQ&5#%;^:NT<&-OZ@A01<47\S:MX$=E!:8D+9%O2S81)VHVT2X[, M5$9<1-F;/@Q)'$(:L#"4!W\6]OI\8K"<)8HQ.9PJ/1!8UF-?VL>O3D?14H_B^=G %/TCQ7-Z_-RXMJ:[KRSDMW:G(.@1S9MEEL*VC; M:F"P#KF',E$3P2WZ1A"A*<(R$,M8K2;)#N*_SA/%BK(:EN#FHZ/O93A1(LK& M$#T2+2]+]JHM-GX4'-94S8)853>8M1)1 80RX8C7-,6B+\38MCX)FK)0SB?E MQA8)*)2_D,7%;"DC0+B\LI' K">=EUADH3H7>((Y[Z[(+2*P)Y06"RZ=ZXWG MU++"DU.VJJKK"E?S_^1?90/PTK*45PQ="Y(Y5E?8)953[KWQ!)N?:NI1M]N& M[UO@.^CQAF'\-AC?M)VFX?QV1-[P?2M\KQO&;X/Q?;MM,-X8-6^'[X[=-P*_ M#<8WP-DW&+\=J&D9OF]#XHU1LR7&-^RV$7D#-7O'=VK*6FZF.[,UP[(T6KBY MM#10N;ZQ]]3VQ O.ZIT2O&>-^X5&=L7;;VMG#3 "+_[XKO&N4C8Y(#&=0V)4 MI+[+9@!F:\+1:-JMA8;! MQH7C&YUF\UM^F@UM;B9KEI7=8H':UQ]L2 9:=KO:Q?)J@"@Z95J?<),YMOY@ M08:;]&]>$(PE:A3%05BB52J*M:*"L3/WU,ZDLSZ,E;E]T=@]*_.+3)6CT_2H ME!WS_ZA>,7A\\S;&FS(VA8-A?1M1;]1'ZW]Y:OW,K5Q"WKPT5&EQRA12&0]V M)@\6]8.Q5%I[Q:QX!B!0[U>C++:O+*2EN6%)>62\6Q4 MH90&J"9H?6-85E>S'X-85J/R:MU.97QZ46.S5-F\2@-#U9'T.=']ET_J_L_I MDH3%"@9QM$[ZEQ4SO#&1/ RL7)RNOZ5F^VL:[=(<^3-JQR*\U^D][%CNG%"N E-US*+8PJ -Q,';.C]B& M?*Y=LVU^4 ?B;!CXW!,?XXVZ$H=C=*VMCG0_![47WD*C7:O7Z_C?FQ#1?=J( M^)7:RFG>PJ^E/G,FL+:*S[#!3<0M;E)L>I05@U"KX]1Z3<=L8NR*LV$V,9P. M<-EL81R0>_&VMC V!ZD[;.WMY1;&+HUV+UP8IUOKU#NU>J_SMJ5]U_8\\D;] M3H,>* H-]R)$][3.K, ):8)Y[D49-@3?OGU>W4CG>2([-=2*].8N>!S;F-^] MT'R[[HIL993KKE'8B4&NQPG9M5%NWOG8DL3NK)7URDV.C>O'Y7&=ESD%^Z[H M5_(:#D=LR3GX@8ZA>0$A_4E%IPV]^^EZX?]>?F+0\TA\[WS LRN+_*MZHUZC MT^U^CECL81>#3W[,Q9'E\J3!O[#+@95,'Q(T$84^>(JZ..V\^ B>DDUPY^:H MT;;K%HPAH"/RQ/&(49;B49)T])\;C<<13FSDWMI644[TU-OHR#^7A37+XQ,N MG@'WC\69A,4AA#7YA FV\-!.=):GL="M)T\F1QQ?B47[Y"R(\ M.!$?>L=2/' RY#=1ZM/!\VG,PD2>*DGG@XI=*\%@('I2=(P(+79S@\M#L-0:>U^OS 8/7X:EGQ9EH MG?.'$;PC3:X[,,R6.N"P"L!\V6T[]^/?UG/ZY M(GM>=/B:>*LX>XW*,N4%C\B2=N[-.!XDLK?*=& MGD837;BK-I-+B[%K-^8.5(>\8_&ETMB;CNV\3(IWT^I?83*D#*Z7?G4R+%AI MXV,T9.K-IO/ 'YJ.Y]BC=#S/_ECS:;%?,] )3I,=.ZWW[,,/3ML3OUEGR*DA M\(J.LQX\DB'WE@']\\ZU'@Y!9U2[<;@/D@G8W3#BME'L;NPW=G_V0Q:Z/@L, M=AOL-MB]3>QN&+M[H]C=V)K=?<4I-@SPW:Y78&L;P#: ;0![&X!MC.W- O:V MC.U7 /8\ ]L M@%L ]@;ETRG[E@7OUT9B:N<_HL0TTZL__GYZR_618@9'2Z> MMN5F8Y@+4?_O?*3]?E]]ZJE/O0C>$T:IQ283SBBI @'U J<4GOQC!VC2XG;' S0+A9O_BA[<#S \U4&>@;@?I/PP!1*C[Y?1G(UB; MAKI?V( '!N0,R!F0VPC(??EZ;@1KTR#W)>8)3(HQZ S6&:S;'-9].O]L!&O3 M6/>)#_W0-TAGD,X@W8:0KF6$JG+ZSR)XO?6%W3RU(?M^B#DS:2J*8750Q$)[ M%Q[-X(J'N[JR8M("G30-?ZHI@^??/9]FNZ!:U0]J5X!?XD_X7;5%L)T^'W^< M1 D!]$G,,B(R?^9Q]&J[P_-NO)!Q$9$$+>IL4JTD+9B3=S^5-&%!]J9> M_YFJN$<\YI@U8#\AE8<_"?_^86Y/PHU-0Q:'?C):82HJ4#"2N25](J\]#=V> MGTP"]GCB$\ =#X+(O2T] N\I31XN9('I+U !LH]$W>L./>[UKQO]EG/=JKO= MZUYST+UN#WM-SNK]%G>\=S*)D.!"@RPWX"Q&?3?ZJ(@G'D[-1Z-K-]ME>&S6 M[49[,EVWKSVZ]+QCEP?!PG,"U!->W?*H7*G=:&GM-<64-;M";#0 I9]__]M* M8*ZQ3+*B0<)S Q,>X6$G:_$61'0^L,O@UBD^@)MSHQ2@+:G:;K?"QZ16KFV(*5-3UY\V9% MK.6KB__X[?3;/[^>7UWW6[UZO2/7;<6+0G)_4?N"G)*E/5VN#K&GRY%CQ:E)SHB5XPL>@ (QHC)3!5\$$44N;B@(]8,%2IX]0J27R!GASS+(2[ MZ(%%AR73/6:Y896[1NWZ'OMU:R?^R]>+7R^_7EQ95^=?_[@X.[^RSBZ_?KG\ M>OKMXO*WE\4%#,.W'II9QRB>BLRL&@A\HKW8)Y;R$\OZE3U:+760T\NF;:M' M&_V0_&#]-P]#GHZL7VWK4^3=\'!W)N]PUH]A\B:(]TO/$#:WGP(=[D=L=Z;J MCO_ )I.XE>LC!M2>+'/[QP]^=<;C0MK>?XE]>/<$7CY#QH>8 M_/-[5V)@.I%""R@[Q)0D +E, 8 M " 0 !P&5X,S%D,2YH=&U02P$"% ,4 M " "GCJ1095UH:BX) N30 & @ %;"0 <')I;2TR M,#(P,#,S,7AE>#,Q9#(N:'1M4$L! A0#% @ IXZD4+/=&!]6!0 ;AX M !@ ( !OQ( '!R:6TM,C R,# S,S%X97@S,F0Q+FAT;5!+ M 0(4 Q0 ( *>.I% U %U304 (H> 8 " 4L8 !P M&5X,S)D,BYH=&U02P$"% ,4 " "GCJ100B/7VYL2 M #0S@ $0 @ '.'0 <')I;2TR,#(P,#4P-"YX&UL4$L! A0#% @ IXZD4(2[)SI,* VXP" M !4 ( !S$ '!R:6TM,C R,# U,#1?9&5F+GAM;%!+ 0(4 M Q0 ( *>.I%"#DB4DNW, /IG!P 5 " 4MI !P&UL4$L! A0# M% @ IXZD4-A0:G7Q-P( %_T; !4 ( !_R8! '!R:6TM F,C R,# U,#1X,3!Q+FAT;5!+!08 "@ * *8" C7P, ! end XML 51 R14.htm IDEA: XBRL DOCUMENT v3.20.1
Goodwill and Intangible Assets
3 Months Ended
Mar. 31, 2020
Goodwill and Intangible Assets  
Goodwill and Intangible Assets

Note 6—Goodwill and Intangible Assets

The carrying amount of goodwill by reportable segment is as follows (in thousands):

March 31, 

December 31, 

 

Reporting Segment

    

2020

    

2019

 

Power

 

$

26,194

$

26,194

Pipeline

 

 

52,415

 

52,415

Utilities

 

 

37,312

 

37,312

Transmission

59,032

59,032

Civil

 

 

40,150

 

40,150

Total Goodwill

$

215,103

$

215,103

The table below summarizes the intangible asset categories, amounts and the average amortization periods, which are on a straight-line basis (in thousands):

March 31, 2020

December 31, 2019

    

Weighted
Average Life

    

Gross Carrying
Amount

    

Accumulated
Amortization

    

Intangible assets, net

    

Gross Carrying
Amount

    

Accumulated
Amortization

    

Intangible assets, net

 

Tradename

9 years

$

16,040

(13,714)

2,326

$

16,040

$

(13,216)

$

2,824

Customer relationships

 

17 years

 

91,000

(26,128)

64,872

 

91,000

 

(24,353)

 

66,647

Non-compete agreements

5 years

 

1,900

(1,653)

247

 

1,900

 

(1,580)

 

320

Other

3 years

275

(260)

15

275

(237)

38

Total

 

16 years

$

109,215

$

(41,755)

$

67,460

$

109,215

$

(39,386)

$

69,829

Amortization expense of intangible assets was $2.4 million and $2.7 million for the three months ended March 31, 2020 and 2019, respectively. Estimated future amortization expense for intangible assets is as follows (in thousands):

Estimated

 

Intangible

 

Amortization

 

For the Years Ending December 31, 

    

Expense

 

2020 (remaining nine months)

$

6,448

2021

7,577

2022

 

6,416

2023

 

5,581

2024

 

4,862

Thereafter

 

36,576

$

67,460

XML 52 R10.htm IDEA: XBRL DOCUMENT v3.20.1
Basis of Presentation
3 Months Ended
Mar. 31, 2020
Basis of Presentation  
Basis of Presentation

Note 2—Basis of Presentation

Interim condensed consolidated financial statements The interim condensed consolidated financial statements for the three month period ended March 31, 2020 and 2019 have been prepared in accordance with Rule 10-01 of Regulation S-X of the Securities Exchange Act of 1934, as amended (the “Exchange Act”). As such, certain disclosures, which would substantially duplicate the disclosures contained in our Annual Report on Form 10-K, filed on February 24, 2020, which contains our audited consolidated financial statements for the year ended December 31, 2019, have been omitted.

This Form 10-Q should be read in conjunction with our most recent Annual Report on Form 10-K. The interim financial information is unaudited.  In the opinion of management, the interim information includes all adjustments (consisting of normal recurring adjustments) necessary for the fair presentation of the interim financial information. 

Customer concentration — We operate in multiple industry segments encompassing the construction of commercial, industrial and public works infrastructure assets primarily throughout the United States. Typically, the top ten customers in any one calendar year generate revenue that is approximately 50% of total revenue; however, the group that comprises the top ten customers varies from year to year. For the three months ended March 31, 2020 and 2019,

approximately 50.1% and 49.1%, respectively, of total revenue was generated from our top ten customers. For the three months ended March 31, 2020, one pipeline customer represented approximately 11.3% of total revenue and for the three months ended March 31, 2019 no one single customer represented greater than 10.0% of total revenue.

XML 53 R33.htm IDEA: XBRL DOCUMENT v3.20.1
Noncontrolling Interests (Tables)
3 Months Ended
Mar. 31, 2020
Noncontrolling Interests  
Schedule of joint venture operating activities included in the Company's consolidated statements of income

The Carlsbad joint venture’s operating activities began in 2015 and are included in our Condensed Consolidated Statements of Operations as follows (in thousands):

Three Months Ended March 31, 

    

2020

    

2019

 

Revenue

$

$

4,024

Net income attributable to noncontrolling interests

3

989

Schedule of the carrying value of the assets and liabilities included in the Company's consolidated balance sheets

The following table summarizes the total balance sheet amounts for the Carlsbad joint venture, which is included in our Condensed Consolidated Balance Sheets, and the total consolidated balance sheet amounts (in thousands):

Joint Venture

Consolidated

At March 31, 2020

    

Amounts

    

Amounts

 

Cash

$

2,026

$

93,474

Accounts receivable

416,412

Contract assets

359,370

Due from Primoris

476

Accounts payable

258,962

Contract liabilities

434

176,847

At December 31, 2019

Cash

$

2,124

$

120,286

Accounts receivable

404,911

Contract assets

344,806

Accounts payable

38

235,972

Contract liabilities

425

192,397

XML 54 R37.htm IDEA: XBRL DOCUMENT v3.20.1
Reportable Segments (Tables)
3 Months Ended
Mar. 31, 2020
Reportable Segments  
Schedule of revenue and gross profit by segment

Revenue by segment was as follows (in thousands):

For the three months ended March 31, 

2020

2019

% of

% of

Total

Total

Segment

    

Revenue

    

Revenue

    

Revenue

    

Revenue

Power

$

196,193

 

26.4%

$

145,383

 

22.0%

Pipeline

191,523

25.8%

134,814

20.4%

Utilities

 

147,170

 

19.8%

 

146,206

 

22.1%

Transmission

102,784

13.8%

118,443

17.9%

Civil

 

105,573

 

14.2%

 

116,712

 

17.6%

Total

$

743,243

 

100.0%

$

661,558

 

100.0%

Segment Gross Profit

Gross profit by segment was as follows (in thousands):

For the three months ended March 31, 

2020

2019

    

    

% of

    

    

% of

Segment

Segment

Segment

Gross Profit

Revenue

Gross Profit

Revenue

Power

$

18,682

 

9.5%

$

20,198

 

13.9%

Pipeline

16,492

8.6%

15,016

11.1%

Utilities

 

4,602

 

3.1%

 

8,241

 

5.6%

Transmission

1,712

1.7%

6,628

5.6%

Civil

 

6,322

 

6.0%

 

2,377

 

2.0%

Total

$

47,810

 

6.4%

$

52,460

 

7.9%

XML 55 R56.htm IDEA: XBRL DOCUMENT v3.20.1
Dividends and Earnings Per Share (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended
Feb. 22, 2020
Oct. 31, 2019
Aug. 02, 2019
May 03, 2019
Feb. 26, 2019
Nov. 02, 2018
Mar. 31, 2020
Mar. 31, 2019
Dividends and Earnings Per Share                
Cash dividend declared (in dollars per share) $ 0.060 $ 0.060 $ 0.060 $ 0.060 $ 0.060 $ 0.060 $ 0.06 $ 0.06
Numerator:                
Net (loss) income attributable to Primoris             $ (3,737) $ 1,947
Denominator:                
Weighted average shares for computation of basic earnings per share             48,588 50,770
Dilutive effect of shares issued to independent directors               8
Dilutive effect of restricted stock units               410
Weighted average shares for computation of diluted (loss) earnings per share             48,588 51,188
(loss) earnings per share attributable to Primoris:                
Basic earnings per share (in dollars per share)             $ (0.08) $ 0.04
Diluted earnings per share (in dollars per share)             $ (0.08) $ 0.04
XML 56 R52.htm IDEA: XBRL DOCUMENT v3.20.1
Derivative Instruments - Derivative contract and instruments (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Dec. 31, 2019
Derivative Instruments      
Liability Derivatives $ 11,414   $ 6,443
Interest rate swap | Interest expense      
Derivative Instruments      
Amount of Loss Recognized on Derivatives 5,435 $ 1,596  
Interest rate swap | Other long-term liabilities      
Derivative Instruments      
Liability Derivatives $ 11,414   $ 6,443
XML 57 report.css IDEA: XBRL DOCUMENT /* Updated 2009-11-04 */ /* v2.2.0.24 */ /* DefRef Styles */ ..report table.authRefData{ background-color: #def; border: 2px solid #2F4497; font-size: 1em; position: absolute; } ..report table.authRefData a { display: block; font-weight: bold; } ..report table.authRefData p { margin-top: 0px; } ..report table.authRefData .hide { background-color: #2F4497; padding: 1px 3px 0px 0px; text-align: right; } ..report table.authRefData .hide a:hover { background-color: #2F4497; } ..report table.authRefData .body { height: 150px; overflow: auto; width: 400px; } ..report table.authRefData table{ font-size: 1em; } /* Report Styles */ ..pl a, .pl a:visited { color: black; text-decoration: none; } /* table */ ..report { background-color: white; border: 2px solid #acf; clear: both; color: black; font: normal 8pt Helvetica, Arial, san-serif; margin-bottom: 2em; } ..report hr { border: 1px solid #acf; } /* Top labels */ ..report th { background-color: #acf; color: black; font-weight: bold; text-align: center; } ..report th.void { background-color: transparent; color: #000000; font: bold 10pt Helvetica, Arial, san-serif; text-align: left; } ..report .pl { text-align: left; vertical-align: top; white-space: normal; width: 200px; white-space: normal; /* word-wrap: break-word; */ } ..report td.pl a.a { cursor: pointer; display: block; width: 200px; overflow: hidden; } ..report td.pl div.a { width: 200px; } ..report td.pl a:hover { background-color: #ffc; } /* Header rows... */ ..report tr.rh { background-color: #acf; color: black; font-weight: bold; } /* Calendars... */ ..report .rc { background-color: #f0f0f0; } /* Even rows... */ ..report .re, .report .reu { background-color: #def; } ..report .reu td { border-bottom: 1px solid black; } /* Odd rows... */ ..report .ro, .report .rou { background-color: white; } ..report .rou td { border-bottom: 1px solid black; } ..report .rou table td, .report .reu table td { border-bottom: 0px solid black; } /* styles for footnote marker */ ..report .fn { white-space: nowrap; } /* styles for numeric types */ ..report .num, .report .nump { text-align: right; white-space: nowrap; } ..report .nump { padding-left: 2em; } ..report .nump { padding: 0px 0.4em 0px 2em; } /* styles for text types */ ..report .text { text-align: left; white-space: normal; } ..report .text .big { margin-bottom: 1em; width: 17em; } ..report .text .more { display: none; } ..report .text .note { font-style: italic; font-weight: bold; } ..report .text .small { width: 10em; } ..report sup { font-style: italic; } ..report .outerFootnotes { font-size: 1em; } XML 59 R43.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue - Contract assets (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Dec. 31, 2019
Revenue    
Unbilled revenue $ 268,282 $ 251,429
Retention receivable 78,216 81,393
Contract materials (not yet installed) 12,872 11,984
Contract assets 359,370 $ 344,806
Increase (decrease) in contract assets $ (14,600)  
XML 61 R47.htm IDEA: XBRL DOCUMENT v3.20.1
Goodwill and Intangible Assets - Intangible Assets (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Dec. 31, 2019
Intangible assets      
Weighted Average Life 16 years    
Gross Carrying Amount $ 109,215   $ 109,215
Accumulated Amortization (41,755)   (39,386)
Amortization expense of intangible assets 2,400 $ 2,700  
Estimated future amortization expense for intangible assets      
2020 (remaining nine months) 6,448    
2021 7,577    
2022 6,416    
2023 5,581    
2024 4,862    
Thereafter 36,576    
Total $ 67,460   69,829
Tradename      
Intangible assets      
Weighted Average Life 9 years    
Gross Carrying Amount $ 16,040   16,040
Accumulated Amortization (13,714)   (13,216)
Estimated future amortization expense for intangible assets      
Total $ 2,326   2,824
Customer relationships      
Intangible assets      
Weighted Average Life 17 years    
Gross Carrying Amount $ 91,000   91,000
Accumulated Amortization (26,128)   (24,353)
Estimated future amortization expense for intangible assets      
Total $ 64,872   66,647
Non-compete agreements      
Intangible assets      
Weighted Average Life 5 years    
Gross Carrying Amount $ 1,900   1,900
Accumulated Amortization (1,653)   (1,580)
Estimated future amortization expense for intangible assets      
Total $ 247   320
Other      
Intangible assets      
Weighted Average Life 3 years    
Gross Carrying Amount $ 275   275
Accumulated Amortization (260)   (237)
Estimated future amortization expense for intangible assets      
Total $ 15   $ 38
XML 62 R6.htm IDEA: XBRL DOCUMENT v3.20.1
CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)
$ in Thousands
Common Stock
Additional Paid-in Capital
Retained Earnings
Accumulated Other Comprehensive Income (Loss)
Non Controlling Interest
Total
Balance at Dec. 31, 2018 $ 5 $ 144,048 $ 461,075 $ (908) $ 2,763 $ 606,983
Balance (in shares) at Dec. 31, 2018 50,715,518          
Increase (Decrease) in Stockholders' Equity Roll Forward            
Net (loss) income     1,947   989 2,936
Foreign currency translation adjustments, net of tax       374   374
Issuance of shares to employees and/or directors   2,661       2,661
Issuance of shares to employees and/or directors (in shares) 127,384          
Amortization of Restricted Stock Units   487       487
Dividend equivalent Units accrued - Restricted Stock Units   12 (12)      
Distribution of noncontrolling entities         (5) (5)
Dividends declared     (3,051)     (3,051)
Balance at Mar. 31, 2019 $ 5 147,208 459,959 (534) 3,747 610,385
Balance (in shares) at Mar. 31, 2019 50,842,902          
Balance at Dec. 31, 2019 $ 5 97,130 531,291 76 1,028 629,530
Balance (in shares) at Dec. 31, 2019 48,665,138          
Increase (Decrease) in Stockholders' Equity Roll Forward            
Net (loss) income     (3,737)   3 (3,734)
Foreign currency translation adjustments, net of tax       (1,737)   (1,737)
Issuance of shares to employees and/or directors   1,174       1,174
Issuance of shares to employees and/or directors (in shares) 51,268          
Amortization of Restricted Stock Units   499       499
Dividend equivalent Units accrued - Restricted Stock Units   4 (4)      
Repurchase of stock   (7,393)       (7,393)
Repurchase of stock (in shares) (461,831)          
Dividends declared     (2,895)     (2,895)
Balance at Mar. 31, 2020 $ 5 $ 91,414 $ 524,655 $ (1,661) $ 1,031 $ 615,444
Balance (in shares) at Mar. 31, 2020 48,254,575          
XML 63 R2.htm IDEA: XBRL DOCUMENT v3.20.1
CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Current assets:    
Cash and cash equivalents $ 93,474 $ 120,286
Accounts receivable, net 416,412 404,911
Contract assets 359,370 344,806
Prepaid expenses and other current assets 47,409 42,704
Total current assets 916,665 912,707
Property and equipment, net 363,993 375,888
Operating lease assets 253,117 242,385
Deferred tax assets 1,090 1,100
Intangible assets, net 67,460 69,829
Goodwill 215,103 215,103
Other long-term assets 17,675 13,453
Total assets 1,835,103 1,830,465
Current liabilities:    
Accounts payable 258,962 235,972
Contract liabilities 176,847 192,397
Accrued liabilities 192,648 183,501
Dividends payable 2,895 2,919
Current portion of long-term debt 52,430 55,659
Total current liabilities 683,782 670,448
Long-term debt, net of current portion 290,749 295,642
Noncurrent operating lease liabilities, net of current portion 176,546 171,225
Deferred tax liabilities 17,820 17,819
Other long-term liabilities 50,762 45,801
Total liabilities 1,219,659 1,200,935
Commitments and contingencies (See Note 16)
Stockholders' equity    
Common stock-$.0001 par value; 90,000,000 shares authorized; 48,254,575 and 48,665,138 issued and outstanding at March 31, 2020 and December 31, 2019, respectively 5 5
Additional paid-in capital 91,414 97,130
Retained earnings 524,655 531,291
Accumulated other comprehensive (loss) income (1,661) 76
Noncontrolling interest 1,031 1,028
Total stockholders' equity 615,444 629,530
Total liabilities and stockholders' equity $ 1,835,103 $ 1,830,465
XML 64 R64.htm IDEA: XBRL DOCUMENT v3.20.1
Subsequent Events (Details) - $ / shares
3 Months Ended
May 01, 2020
Feb. 22, 2020
Oct. 31, 2019
Aug. 02, 2019
May 03, 2019
Feb. 26, 2019
Nov. 02, 2018
Mar. 31, 2020
Mar. 31, 2019
Cash Dividend                  
Cash dividend declared (in dollars per share)   $ 0.060 $ 0.060 $ 0.060 $ 0.060 $ 0.060 $ 0.060 $ 0.06 $ 0.06
Subsequent Events                  
Cash Dividend                  
Cash dividend declared (in dollars per share) $ 0.06                
XML 65 R60.htm IDEA: XBRL DOCUMENT v3.20.1
Leases - Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Future minimum lease payments under non-cancelable operating leases    
Total $ 256,078 $ 245,261
XML 66 R26.htm IDEA: XBRL DOCUMENT v3.20.1
Subsequent Event
3 Months Ended
Mar. 31, 2020
Subsequent Events.  
Subsequent Events

Note 18—Subsequent Events

Cash Dividend

On May 1, 2020, the Board of Directors declared a cash dividend of $0.06 per share of common stock for stockholders of record as of June 30, 2020, payable on or about July 15, 2020.

XML 67 R22.htm IDEA: XBRL DOCUMENT v3.20.1
Stockholders' Equity
3 Months Ended
Mar. 31, 2020
Stockholders' Equity  
Stockholders' Equity

Note 14—Stockholders’ Equity

Common stock

We issued 34,524 and 114,106 shares of common stock in the three months ended March 31, 2020 and 2019, respectively, under our long-term retention plan (“LTR Plan”). The shares were purchased by the participants in the LTR Plan with payment made to us of $0.6 million and $1.8 million in the three months ended March 31, 2020 and 2019, respectively. Our LTR Plan for certain managers and executives allows participants to use a portion of their annual bonus amount to purchase our common stock at a discount from the market price. The shares purchased in the three months ended March 31, 2020 were a portion of bonus amounts earned in 2019, and the number of shares purchased was calculated based on 75% of the average daily closing market price of our common stock during December 2019. The shares purchased in the three months ended March 31, 2019 were for bonus amounts earned in 2018, and the number of shares was calculated at 75% of the average daily closing market price during December 2018.

In the three months ended March 31, 2020 and 2019, we issued 16,744 and 13,278 shares of common stock, respectively, as part of the quarterly compensation of the non-employee members of the Board of Directors.

As discussed in Note 11 — “Stock–Based Compensation”, as of March 31, 2020, the Board of Directors has granted a total of 607,361 shares of Units, net of forfeitures under the Equity Plan and a total of 2,401 Dividend Equivalent Units were accrued at March 31, 2020.

Share Repurchase Plan

In February 2020, our Board of Directors authorized a $25.0 million share repurchase program. Under the share repurchase program, we can, depending on market conditions, share price and other factors, acquire shares of our common stock on the open market or in privately negotiated transactions. In the three months ended March 31, 2020 we purchased and cancelled 461,831 shares of common stock, which in the aggregate, equaled $7.4 million at an average share price of $16.01. The share repurchase plan expires on December 31, 2020.

XML 68 Show.js IDEA: XBRL DOCUMENT // Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission. Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105. var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0); e.removeAttribute('id');a.parentNode.appendChild(e)}} if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'} e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}} XML 69 R42.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue - Performance obligations - 2020 (Details) - Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-04-01
3 Months Ended
Mar. 31, 2020
Revenue expected timing  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction 12 months
Percentage of remaining performance obligation expected to be recognized in period 58.00%
XML 70 R46.htm IDEA: XBRL DOCUMENT v3.20.1
Goodwill and Intangible Assets - Goodwill (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Mar. 31, 2019
Goodwill      
Goodwill $ 215,103 $ 215,103 $ 215,103
Power      
Goodwill      
Goodwill 26,194   26,194
Pipeline      
Goodwill      
Goodwill 52,415   52,415
Utilities      
Goodwill      
Goodwill 37,312   37,312
Transmission      
Goodwill      
Goodwill 59,032   59,032
Civil      
Goodwill      
Goodwill $ 40,150   $ 40,150
XML 71 R61.htm IDEA: XBRL DOCUMENT v3.20.1
Commitments and Contingencies - Legal (Details) - USD ($)
$ in Thousands
3 Months Ended
Feb. 25, 2015
Mar. 31, 2020
Mar. 31, 2019
Dec. 31, 2019
Commitments and contingencies        
Revenue   $ 743,243 $ 661,558  
Gross Profit   $ 47,810 $ 52,460  
JCG | North Texas Tollway Authority v. James Construction Group, LLC        
Commitments and contingencies        
Expected remediation cost on settlement $ 17,000      
Percentage of expected costs second defendant would pay   20.00%    
Percentage of expected costs Company would pay   80.00%    
Remaining accrual balance   $ 6,500    
Expected remediation cost 22,400      
Increase in liability   500    
Remediation costs   2,500    
JCG | North Texas Tollway Authority v. James Construction Group, LLC | Maximum        
Commitments and contingencies        
Agreed payments by second defendant in expected remediation costs toward settlement $ 5,400      
Bonding        
Commitments and contingencies        
Bid and completion bonds issued and outstanding   $ 829,000   $ 648,600
XML 72 R7.htm IDEA: XBRL DOCUMENT v3.20.1
CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical) - $ / shares
3 Months Ended
Feb. 22, 2020
Oct. 31, 2019
Aug. 02, 2019
May 03, 2019
Feb. 26, 2019
Nov. 02, 2018
Mar. 31, 2020
Mar. 31, 2019
CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY                
Cash dividend declared (in dollars per share) $ 0.060 $ 0.060 $ 0.060 $ 0.060 $ 0.060 $ 0.060 $ 0.06 $ 0.06
XML 73 R3.htm IDEA: XBRL DOCUMENT v3.20.1
CONSOLIDATED BALANCE SHEETS (Parenthetical) - $ / shares
Mar. 31, 2020
Dec. 31, 2019
Stockholders' equity    
Common stock, par value (in dollars per share) $ 0.0001 $ 0.0001
Common stock, shares authorized 90,000,000 90,000,000
Common stock, shares issued 48,254,575 48,665,138
Common stock, shares outstanding 48,254,575 48,665,138
JSON 74 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "prim-20200504x10q.htm": { "axisCustom": 0, "axisStandard": 28, "contextCount": 202, "dts": { "calculationLink": { "local": [ "prim-20200504_cal.xml" ] }, "definitionLink": { "local": [ "prim-20200504_def.xml" ], "remote": [ "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-eedm-def-2019-01-31.xml", "http://xbrl.fasb.org/srt/2019/elts/srt-eedm1-def-2019-01-31.xml" ] }, "inline": { "local": [ "prim-20200504x10q.htm" ] }, "labelLink": { "local": [ "prim-20200504_lab.xml" ], "remote": [ "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-doc-2019-01-31.xml", "https://xbrl.sec.gov/dei/2019/dei-doc-2019-01-31.xml" ] }, "presentationLink": { "local": [ "prim-20200504_pre.xml" ] }, "referenceLink": { "remote": [ "https://xbrl.sec.gov/dei/2019/dei-ref-2019-01-31.xml", "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-ref-2019-01-31.xml" ] }, "schema": { "local": [ "prim-20200504.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd", "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd", "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-roles-2019-01-31.xsd", "http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd", "http://xbrl.fasb.org/srt/2019/elts/srt-roles-2019-01-31.xsd", "https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-parts-codification-2019-01-31.xsd" ] } }, "elementCount": 468, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2019-01-31": 11, "http://xbrl.sec.gov/dei/2019-01-31": 5, "total": 16 }, "keyCustom": 44, "keyStandard": 291, "memberCustom": 22, "memberStandard": 33, "nsprefix": "prim", "nsuri": "http://www.primoriscorp.com/20200504", "report": { "R1": { "firstAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "00090 - Document - Document and Entity Information", "role": "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation", "shortName": "Document and Entity Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10201 - Disclosure - Basis of Presentation", "role": "http://www.primoriscorp.com/role/DisclosureBasisOfPresentation", "shortName": "Basis of Presentation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10301 - Disclosure - Recent Accounting Pronouncements", "role": "http://www.primoriscorp.com/role/DisclosureRecentAccountingPronouncements", "shortName": "Recent Accounting Pronouncements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10401 - Disclosure - Fair Value Measurements", "role": "http://www.primoriscorp.com/role/DisclosureFairValueMeasurements", "shortName": "Fair Value Measurements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10501 - Disclosure - Revenue", "role": "http://www.primoriscorp.com/role/DisclosureRevenue", "shortName": "Revenue", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10601 - Disclosure - Goodwill and Intangible Assets", "role": "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssets", "shortName": "Goodwill and Intangible Assets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10701 - Disclosure - Accounts Payable and Accrued Liabilities", "role": "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilities", "shortName": "Accounts Payable and Accrued Liabilities", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10801 - Disclosure - Credit Arrangements", "role": "http://www.primoriscorp.com/role/DisclosureCreditArrangements", "shortName": "Credit Arrangements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10901 - Disclosure - Derivative Instruments", "role": "http://www.primoriscorp.com/role/DisclosureDerivativeInstruments", "shortName": "Derivative Instruments", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:MinorityInterestDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11001 - Disclosure - Noncontrolling Interests", "role": "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterests", "shortName": "Noncontrolling Interests", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:MinorityInterestDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11101 - Disclosure - Stock-Based Compensation", "role": "http://www.primoriscorp.com/role/DisclosureStockBasedCompensation", "shortName": "Stock-Based Compensation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00100 - Statement - CONSOLIDATED BALANCE SHEETS", "role": "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets", "shortName": "CONSOLIDATED BALANCE SHEETS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11201 - Disclosure - Income Taxes", "role": "http://www.primoriscorp.com/role/DisclosureIncomeTaxes", "shortName": "Income Taxes", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "prim:DividendsAndEarningsPerShareDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11301 - Disclosure - Dividends and Earnings Per Share", "role": "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShare", "shortName": "Dividends and Earnings Per Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "prim:DividendsAndEarningsPerShareDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11401 - Disclosure - Stockholders' Equity", "role": "http://www.primoriscorp.com/role/DisclosureStockholdersEquity", "shortName": "Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11501 - Disclosure - Leases", "role": "http://www.primoriscorp.com/role/DisclosureLeases", "shortName": "Leases", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11601 - Disclosure - Commitments and Contingencies", "role": "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingencies", "shortName": "Commitments and Contingencies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11701 - Disclosure - Reportable Segments", "role": "http://www.primoriscorp.com/role/DisclosureReportableSegments", "shortName": "Reportable Segments", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11801 - Disclosure - Subsequent Event", "role": "http://www.primoriscorp.com/role/DisclosureSubsequentEvent", "shortName": "Subsequent Event", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30403 - Disclosure - Fair Value Measurements (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsTables", "shortName": "Fair Value Measurements (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "prim:ContractWithCustomerAssetTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30503 - Disclosure - Revenue (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureRevenueTables", "shortName": "Revenue (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "prim:ContractWithCustomerAssetTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30603 - Disclosure - Goodwill and Intangible Assets (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsTables", "shortName": "Goodwill and Intangible Assets (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "Unit_Divide_USD_shares_Q21w3ch1zU-vjbzdSbx11Q", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)", "role": "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheetsParenthetical", "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "Unit_Divide_USD_shares_Q21w3ch1zU-vjbzdSbx11Q", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30703 - Disclosure - Accounts Payable and Accrued Liabilities (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables", "shortName": "Accounts Payable and Accrued Liabilities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30803 - Disclosure - Credit Arrangements (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureCreditArrangementsTables", "shortName": "Credit Arrangements (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDerivativeAssetsAtFairValueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30903 - Disclosure - Derivative Instruments (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsTables", "shortName": "Derivative Instruments (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDerivativeAssetsAtFairValueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "us-gaap:MinorityInterestDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "prim:ScheduleOfOperatingActivitiesOfVariableInterestEntitiesIncludedInConsolidatedIncomeStatementTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31003 - Disclosure - Noncontrolling Interests (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsTables", "shortName": "Noncontrolling Interests (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:MinorityInterestDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "prim:ScheduleOfOperatingActivitiesOfVariableInterestEntitiesIncludedInConsolidatedIncomeStatementTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31103 - Disclosure - Stock-Based Compensation (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationTables", "shortName": "Stock-Based Compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "prim:DividendsAndEarningsPerShareDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DividendsDeclaredTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31303 - Disclosure - Dividends and Earnings Per Share (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareTables", "shortName": "Dividends and Earnings Per Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "prim:DividendsAndEarningsPerShareDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DividendsDeclaredTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseCostTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31503 - Disclosure - Leases (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureLeasesTables", "shortName": "Leases (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseCostTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31703 - Disclosure - Reportable Segments (Tables)", "role": "http://www.primoriscorp.com/role/DisclosureReportableSegmentsTables", "shortName": "Reportable Segments (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "p", "us-gaap:NatureOfOperations", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unitRef": "Unit_Standard_segment_zK27MSdamEeRnPBVsDPe7g", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40101 - Disclosure - Nature of Business (Details)", "role": "http://www.primoriscorp.com/role/DisclosureNatureOfBusinessDetails", "shortName": "Nature of Business (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R39": { "firstAnchor": { "ancestors": [ "p", "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "INF", "first": true, "lang": null, "name": "prim:ConcentrationRiskNumberOfTopCustomers", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_customer_HLNuazf_bkSNlGSfth9cMA", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40201 - Disclosure - Basis of Presentation (Details)", "role": "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails", "shortName": "Basis of Presentation (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "INF", "first": true, "lang": null, "name": "prim:ConcentrationRiskNumberOfTopCustomers", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_customer_HLNuazf_bkSNlGSfth9cMA", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME", "role": "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome", "shortName": "CONSOLIDATED STATEMENTS OF INCOME", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "-3", "lang": null, "name": "us-gaap:CostOfGoodsAndServicesSold", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_6_30_2019_Ucg1JqPm5U6Reis0w7KmXA", "decimals": "-5", "first": true, "lang": null, "name": "prim:ContingentConsiderationAssetFairValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40401 - Disclosure - Fair Value Measurements (Details)", "role": "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails", "shortName": "Fair Value Measurements (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_6_30_2019_Ucg1JqPm5U6Reis0w7KmXA", "decimals": "-5", "first": true, "lang": null, "name": "prim:ContingentConsiderationAssetFairValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-7", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40501 - Disclosure - Revenue - Performance obligations (Details)", "role": "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligationsDetails", "shortName": "Revenue - Performance obligations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-7", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_prim_cnst_2020-04-01_2mO-ABZ510y6zhBoKkKQ0g", "decimals": "2", "first": true, "lang": null, "name": "prim:RevenueRemainingPerformanceObligationExpectedTimingPercentage", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_bza2TYGRg06hL0_I88QA0A", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40502 - Disclosure - Revenue - Performance obligations - 2020 (Details)", "role": "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligations2020Details", "shortName": "Revenue - Performance obligations - 2020 (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_prim_cnst_2020-04-01_2mO-ABZ510y6zhBoKkKQ0g", "decimals": "2", "first": true, "lang": null, "name": "prim:RevenueRemainingPerformanceObligationExpectedTimingPercentage", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_bza2TYGRg06hL0_I88QA0A", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "prim:ContractWithCustomerAssetTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:UnbilledReceivablesCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40503 - Disclosure - Revenue - Contract assets (Details)", "role": "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails", "shortName": "Revenue - Contract assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "prim:ContractWithCustomerAssetTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:UnbilledReceivablesCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "prim:ContractWithCustomerLiabilityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "prim:ContractWithCustomerLiabilityDeferredRevenueCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40504 - Disclosure - Revenue - Contract liabilities (Details)", "role": "http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails", "shortName": "Revenue - Contract liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "prim:ContractWithCustomerLiabilityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "prim:ContractWithCustomerLiabilityDeferredRevenueCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40505 - Disclosure - Revenue - Disaggregation of revenue by customer type and contract type (Details)", "role": "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails", "shortName": "Revenue - Disaggregation of revenue by customer type and contract type (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_us-gaap_ContractWithCustomerBasisOfPricingAxis_us-gaap_FixedPriceContractMember_paif7KgojEOhpclTKpKcNQ", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40601 - Disclosure - Goodwill and Intangible Assets - Goodwill (Details)", "role": "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails", "shortName": "Goodwill and Intangible Assets - Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2019_BjsJTruINU-LOSyHj80fxQ", "decimals": "-3", "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40602 - Disclosure - Goodwill and Intangible Assets - Intangible Assets (Details)", "role": "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails", "shortName": "Goodwill and Intangible Assets - Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "p", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-5", "first": true, "lang": null, "name": "prim:ContractWithCustomerAccountsPayableDueToSubcontractors", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40701 - Disclosure - Accounts Payable and Accrued Liabilities (Details)", "role": "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails", "shortName": "Accounts Payable and Accrued Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-5", "first": true, "lang": null, "name": "prim:ContractWithCustomerAccountsPayableDueToSubcontractors", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentCarryingAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40801 - Disclosure - Credit Arrangements (Details)", "role": "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails", "shortName": "Credit Arrangements (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentCarryingAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00300 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE (LOSS) INCOME", "role": "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome", "shortName": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE (LOSS) INCOME", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "-3", "lang": null, "name": "us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:DebtWeightedAverageInterestRate", "reportCount": 1, "unitRef": "Unit_Standard_pure_bza2TYGRg06hL0_I88QA0A", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40802 - Disclosure - Credit Arrangements - Narrative (Details)", "role": "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails", "shortName": "Credit Arrangements - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_12_31_2019_tqF5oLEcGEi8Fd6F_eb7aA", "decimals": "3", "lang": null, "name": "us-gaap:DebtWeightedAverageInterestRate", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_bza2TYGRg06hL0_I88QA0A", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "span", "p", "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "INF", "first": true, "lang": null, "name": "prim:NumberOfInstrumentsUsedForTrading", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_instrument_fROoiuuhrEmEXQzvnuS3gg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40901 - Disclosure - Derivative Instruments (Details)", "role": "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails", "shortName": "Derivative Instruments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "INF", "first": true, "lang": null, "name": "prim:NumberOfInstrumentsUsedForTrading", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_instrument_fROoiuuhrEmEXQzvnuS3gg", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDerivativeAssetsAtFairValueTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DerivativeLiabilities", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40902 - Disclosure - Derivative Instruments - Derivative contract and instruments (Details)", "role": "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails", "shortName": "Derivative Instruments - Derivative contract and instruments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDerivativeAssetsAtFairValueTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DerivativeLiabilities", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41001 - Disclosure - Noncontrolling Interests (Details)", "role": "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails", "shortName": "Noncontrolling Interests (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "prim:ScheduleOfCarryingValueOfAssetsAndLiabilitiesOfVariableInterestEntitiesIncludedInConsolidatedFinancialStatementsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "lang": null, "name": "us-gaap:Cash", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_us-gaap_PlanNameAxis_prim_EquityIncentivePlan2013Member_ZuiPBQ1d2UeoeraZwEQYrw", "decimals": "INF", "first": true, "lang": null, "name": "prim:AccruedDividendEquivalentUnits", "reportCount": 1, "unitRef": "Unit_Standard_shares_4os156Flt0-qnxNep42g9Q", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41101 - Disclosure - Stock-Based Compensation - Restricted Stock Units (Details)", "role": "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails", "shortName": "Stock-Based Compensation - Restricted Stock Units (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember_us-gaap_PlanNameAxis_prim_EquityIncentivePlan2013Member_KJAv3jgTqk-VEzu2ilQd3A", "decimals": "INF", "lang": null, "name": "prim:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingVestedNumber", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_4os156Flt0-qnxNep42g9Q", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_bza2TYGRg06hL0_I88QA0A", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41201 - Disclosure - Income Taxes (Details)", "role": "http://www.primoriscorp.com/role/DisclosureIncomeTaxesDetails", "shortName": "Income Taxes (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_bza2TYGRg06hL0_I88QA0A", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:DividendsDeclaredTableTextBlock", "prim:DividendsAndEarningsPerShareDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_2_22_2020_To_2_22_2020_IrdZDsPh306_JNpuPOmsRw", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unitRef": "Unit_Divide_USD_shares_Q21w3ch1zU-vjbzdSbx11Q", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41301 - Disclosure - Dividends and Earnings Per Share (Details)", "role": "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails", "shortName": "Dividends and Earnings Per Share (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2019_To_3_31_2019_4Ezv1q1DlkOqbeVfdLZHjQ", "decimals": "-3", "lang": null, "name": "prim:IncrementalCommonSharesAttributableToSharesIssuedToIndependentDirectorsUnderShareBasedPaymentArrangements", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_4os156Flt0-qnxNep42g9Q", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_prim_EquityIncentivePlan2013Member_g8CxyEXjHUKugubbz1P8hw", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_4os156Flt0-qnxNep42g9Q", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41302 - Disclosure - Dividends and Earnings Per Share - Anti-dilutive shares (Details)", "role": "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareAntiDilutiveSharesDetails", "shortName": "Dividends and Earnings Per Share - Anti-dilutive shares (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_prim_EquityIncentivePlan2013Member_g8CxyEXjHUKugubbz1P8hw", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_4os156Flt0-qnxNep42g9Q", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "p", "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_2_29_2020_x-shwRMOb0GBO7hyW7nj1g", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41401 - Disclosure - Stockholders' Equity (Details)", "role": "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails", "shortName": "Stockholders' Equity (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_2_29_2020_x-shwRMOb0GBO7hyW7nj1g", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41501 - Disclosure - Leases - Components of Lease Expense and Operating Lease Liabilities (Details)", "role": "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails", "shortName": "Leases - Components of Lease Expense and Operating Lease Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_5mGWNOYUnE-shy_TQPGp3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00400 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "role": "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity", "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_5mGWNOYUnE-shy_TQPGp3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "prim:LesseeOperatingLeaseLiabilityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "As_Of_3_31_2020_-48Z0ouy4kaN3yZD5QYVfA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseLiability", "reportCount": 1, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41502 - Disclosure - Leases - Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details)", "role": "http://www.primoriscorp.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails", "shortName": "Leases - Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R61": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41601 - Disclosure - Commitments and Contingencies - Legal (Details)", "role": "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails", "shortName": "Commitments and Contingencies - Legal (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_2_25_2015_To_2_25_2015_srt_LitigationCaseAxis_prim_NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMember_us-gaap_BusinessAcquisitionAxis_prim_JamesConstructionGroupLLCMember_2uFZe3IrL0qK7lugwFuxpQ", "decimals": "-5", "lang": null, "name": "us-gaap:LitigationSettlementAmountAwardedToOtherParty", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "p", "us-gaap:NatureOfOperations", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unitRef": "Unit_Standard_segment_zK27MSdamEeRnPBVsDPe7g", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41701 - Disclosure - Reportable Segments (Details)", "role": "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "shortName": "Reportable Segments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "3", "lang": null, "name": "prim:GrossProfitAsPercentageOfSegmentRevenue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_bza2TYGRg06hL0_I88QA0A", "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "3", "first": true, "lang": null, "name": "prim:RevenuePercentage", "reportCount": 1, "unitRef": "Unit_Standard_pure_bza2TYGRg06hL0_I88QA0A", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41702 - Disclosure - Reportable Segments - Revenue and Total Assets by Geographic Area (Details)", "role": "http://www.primoriscorp.com/role/DisclosureReportableSegmentsRevenueAndTotalAssetsByGeographicAreaDetails", "shortName": "Reportable Segments - Revenue and Total Assets by Geographic Area (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_srt_StatementGeographicalAxis_prim_NonUnitedStatesMember_6KYUxaE6R0WFY8BOMBdMvg", "decimals": "3", "lang": null, "name": "prim:RevenuePercentage", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_bza2TYGRg06hL0_I88QA0A", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:DividendsDeclaredTableTextBlock", "prim:DividendsAndEarningsPerShareDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_2_22_2020_To_2_22_2020_IrdZDsPh306_JNpuPOmsRw", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unitRef": "Unit_Divide_USD_shares_Q21w3ch1zU-vjbzdSbx11Q", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41801 - Disclosure - Subsequent Events (Details)", "role": "http://www.primoriscorp.com/role/DisclosureSubsequentEventsDetails", "shortName": "Subsequent Events (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:SubsequentEventsTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_5_1_2020_To_5_1_2020_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember__5PeX9PbKkuTJHkNoreKVg", "decimals": "INF", "lang": null, "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unique": true, "unitRef": "Unit_Divide_USD_shares_Q21w3ch1zU-vjbzdSbx11Q", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:DividendsDeclaredTableTextBlock", "prim:DividendsAndEarningsPerShareDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_2_22_2020_To_2_22_2020_IrdZDsPh306_JNpuPOmsRw", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unitRef": "Unit_Divide_USD_shares_Q21w3ch1zU-vjbzdSbx11Q", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00405 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)", "role": "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquityParenthetical", "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": null }, "R8": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00500 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "role": "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": "-3", "lang": null, "name": "us-gaap:DepreciationDepletionAndAmortization", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_gZqeF66h2UKXgsUgnrJg7w", "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NatureOfOperations", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10101 - Disclosure - Nature of Business", "role": "http://www.primoriscorp.com/role/DisclosureNatureOfBusiness", "shortName": "Nature of Business", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "prim-20200504x10q.htm", "contextRef": "Duration_1_1_2020_To_3_31_2020_2i1TJ7ZhVEGQm5fwqQSWGA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NatureOfOperations", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 59, "tag": { "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Area code of city", "label": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Cover page.", "label": "Document and Entity Information" } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "xbrltype": "stringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This is focus fiscal year of the document report in CCYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented. If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.", "label": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r331" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r332" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r333" ], "lang": { "en-US": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r333" ], "lang": { "en-US": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r333" ], "lang": { "en-US": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r334" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r333" ], "lang": { "en-US": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r333" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r333" ], "lang": { "en-US": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r333" ], "lang": { "en-US": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "employerIdItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r329" ], "lang": { "en-US": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r330" ], "lang": { "en-US": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "tradingSymbolItemType" }, "prim_AccruedDividendEquivalentUnits": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the number of units accrued under dividend equivalents.", "label": "Accrued Dividend Equivalent Units", "terseLabel": "Accrued dividend equivalent units" } } }, "localname": "AccruedDividendEquivalentUnits", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails", "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "sharesItemType" }, "prim_AdjustedNotionalAmountPercentageOfPrincipalPaymentsOnTermLoan": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Percentage of principal payment on term loan, which is adjusted down each quarter to arrive at the notional amount of the swap.", "label": "Adjusted Notional Amount, Percentage Of Principal Payments On Term Loan", "terseLabel": "Notional amount adjustment" } } }, "localname": "AdjustedNotionalAmountPercentageOfPrincipalPaymentsOnTermLoan", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails" ], "xbrltype": "percentItemType" }, "prim_BondsIssuedAndOutstanding": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Represents the amount of bonds issued and outstanding.", "label": "Bonds, Issued and Outstanding", "terseLabel": "Bid and completion bonds issued and outstanding" } } }, "localname": "BondsIssuedAndOutstanding", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "monetaryItemType" }, "prim_CanadianCreditFacilityCibcMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Canadian credit facility with CIBC bank.", "label": "Canadian Credit Facility Cibc [Member]", "terseLabel": "Working Capital Credit Facility" } } }, "localname": "CanadianCreditFacilityCibcMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "prim_CarlsbadConstructorsJointVentureMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents information pertaining to Carlsbad joint venture.", "label": "Carlsbad Constructors Joint Venture [Member]", "terseLabel": "Carlsbad" } } }, "localname": "CarlsbadConstructorsJointVentureMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNatureOfBusinessDetails", "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "domainItemType" }, "prim_CivilSegmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Pertaining to the Civil segment.", "label": "Civil Segment [Member]", "terseLabel": "Civil" } } }, "localname": "CivilSegmentMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "prim_CommercialEquipmentFinancingDueJune2018ToAugust2022Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the written promise to pay a note to a commercial equipment finance entity, maturing range from June 15, 2018 to August 22, 2022.", "label": "Commercial Equipment Financing Due June2018 To August2022 [Member]", "terseLabel": "Commercial equipment notes" } } }, "localname": "CommercialEquipmentFinancingDueJune2018ToAugust2022Member", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails" ], "xbrltype": "domainItemType" }, "prim_ConcentrationRiskMinimumPercentageOfRevenuesGeneratedBySpecifiedNumberOfTopCustomers": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the minimum percentage of revenue typically generated by specified number of customers in any one calendar year.", "label": "Concentration Risk, Minimum Percentage of Revenues Generated by Specified Number of Top Customers", "terseLabel": "Minimum percentage of revenues generated by top ten customers" } } }, "localname": "ConcentrationRiskMinimumPercentageOfRevenuesGeneratedBySpecifiedNumberOfTopCustomers", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "percentItemType" }, "prim_ConcentrationRiskNumberOfCalendarYearsInWhichTopCustomersGenerateSpecifiedPercentageOfRevenue": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the number of calendar years in which top customers typically generate minimum specified percentage of revenue.", "label": "Concentration Risk, Number of Calendar Years in which Top Customers Generate Specified Percentage of Revenue", "terseLabel": "Number of calendar years in which top customers typically generate minimum specified percentage of revenue" } } }, "localname": "ConcentrationRiskNumberOfCalendarYearsInWhichTopCustomersGenerateSpecifiedPercentageOfRevenue", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "integerItemType" }, "prim_ConcentrationRiskNumberOfCustomers": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the number of customers who typically contribute accounts receivable in excess of a specified percentage.", "label": "Concentration Risk, Number of Customers", "terseLabel": "Number of customers" } } }, "localname": "ConcentrationRiskNumberOfCustomers", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "integerItemType" }, "prim_ConcentrationRiskNumberOfTopCustomers": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the number of top customers who typically generate revenue in excess of a specified percentage of total revenues for the entity and consist of a different group of customers in each year.", "label": "Concentration Risk, Number of Top Customers", "terseLabel": "Number of top customers" } } }, "localname": "ConcentrationRiskNumberOfTopCustomers", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "integerItemType" }, "prim_ContingentConsiderationAssetFairValue": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Fair value of contingent consideration asset.", "label": "Contingent Consideration Asset, Fair Value", "terseLabel": "Contingent consideration" } } }, "localname": "ContingentConsiderationAssetFairValue", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "monetaryItemType" }, "prim_ContractWithCustomerAccountsPayableDueToSubcontractors": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount due to subcontractors and retained pending contract completion and customer acceptance of jobs included in accounts payable.", "label": "Contract with Customer, Accounts Payable, Due to Subcontractors", "terseLabel": "Retention amounts included in accounts payable" } } }, "localname": "ContractWithCustomerAccountsPayableDueToSubcontractors", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prim_ContractWithCustomerAssetTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of contract assets balances and changes in contract assets balances.", "label": "Contract with Customer, Asset [Table Text Block]", "terseLabel": "Schedule of contract assets" } } }, "localname": "ContractWithCustomerAssetTableTextBlock", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueTables" ], "xbrltype": "textBlockItemType" }, "prim_ContractWithCustomerLiabilityAccruedLossProvisionCurrent": { "auth_ref": [], "calculation": { "http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_ContractWithCustomerLiabilityCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Accrued loss provision component of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract with Customer Liability Accrued Loss Provision Current", "terseLabel": "Accrued loss provision" } } }, "localname": "ContractWithCustomerLiabilityAccruedLossProvisionCurrent", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prim_ContractWithCustomerLiabilityDeferredRevenueCurrent": { "auth_ref": [], "calculation": { "http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_ContractWithCustomerLiabilityCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of obligation before accrued loss provision on transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract with Customer, Liability, Deferred Revenue, Current", "terseLabel": "Deferred revenue" } } }, "localname": "ContractWithCustomerLiabilityDeferredRevenueCurrent", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prim_ContractWithCustomerLiabilityModificationOfContract": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The amount of contract modifications included in the expected contract value.", "label": "Contract with Customer, Liability, Modification of Contract", "terseLabel": "Amount of contract modifications included in the expected contract value." } } }, "localname": "ContractWithCustomerLiabilityModificationOfContract", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligationsDetails" ], "xbrltype": "monetaryItemType" }, "prim_ContractWithCustomerLiabilityTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of contract liabilities balances and changes in contract liabilities balances.", "label": "Contract with Customer, Liability [Table Text Block]", "terseLabel": "Schedule of contract liabilities" } } }, "localname": "ContractWithCustomerLiabilityTableTextBlock", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueTables" ], "xbrltype": "textBlockItemType" }, "prim_CostReimbursableContractsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This member stands for cost reimbursable contract.", "label": "Cost Reimbursable Contracts [Member]", "terseLabel": "Cost reimbursable" } } }, "localname": "CostReimbursableContractsMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "prim_CreditFacilityWithCanadianBankMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents information pertaining to credit facility with a Canadian bank.", "label": "Credit Facility With Canadian Bank [Member]", "terseLabel": "Canadian Credit Facility" } } }, "localname": "CreditFacilityWithCanadianBankMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "prim_CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents information pertaining to the credit agreement with Private Bank, Bank of the West and IBERIABANK Corporation.", "label": "Credit Facility With Private Bank Bank Of West And I B E R I A B A N K Corporation [Member]", "terseLabel": "Credit Agreement" } } }, "localname": "CreditFacilityWithPrivateBankBankOfWestAndIBERIABANKCorporationMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "prim_DebtInstrumentCovenantRestrictionsOnInvestmentsChangeOfControlProvisionsAsPercentageOfTotalAssetsToBeDisposedOff": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the restrictions on investments, change of control provisions and provisions, expressed as a percentage of total assets to be disposed off as per the financial covenant.", "label": "Debt Instrument, Covenant Restrictions on Investments Change of Control Provisions as Percentage of Total Assets to be Disposed Off", "terseLabel": "Restrictions on investments, change of control provisions and provisions as a percentage of total assets to be disposed off" } } }, "localname": "DebtInstrumentCovenantRestrictionsOnInvestmentsChangeOfControlProvisionsAsPercentageOfTotalAssetsToBeDisposedOff", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "percentItemType" }, "prim_DeferredCompensationArrangementPercentageOfAverageMarketClosingPricesUsedInDeterminingNumberOfCommonStockThatCouldBePurchasedByParticipants": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents percentage of average market closing prices used in determining number of common stock that could be purchased by participants.", "label": "Deferred Compensation Arrangement Percentage of Average Market Closing Prices used in Determining Number of Common Stock that Could be Purchased by Participants", "terseLabel": "Percentage of average market closing prices used in determining number of common stock that could be purchased by participants" } } }, "localname": "DeferredCompensationArrangementPercentageOfAverageMarketClosingPricesUsedInDeterminingNumberOfCommonStockThatCouldBePurchasedByParticipants", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "percentItemType" }, "prim_DividendEquivalentUnitsValue": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Represents the value of Dividend Equivalent Units, as defined in the Equity Plan, that have accrued.", "label": "Dividend Equivalent Units Value", "terseLabel": "Dividend equivalent Units accrued - Restricted Stock Units" } } }, "localname": "DividendEquivalentUnitsValue", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "prim_DividendsAndEarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "No definition available.", "label": "Dividends and Earnings Per Share" } } }, "localname": "DividendsAndEarningsPerShareAbstract", "nsuri": "http://www.primoriscorp.com/20200504", "xbrltype": "stringItemType" }, "prim_DividendsAndEarningsPerShareDisclosureTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for dividends paid or declared and earnings per share.", "label": "Dividends and Earnings Per Share Disclosure [Text Block]", "terseLabel": "Dividends and Earnings Per Share" } } }, "localname": "DividendsAndEarningsPerShareDisclosureTextBlock", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShare" ], "xbrltype": "textBlockItemType" }, "prim_EffectiveIncomeTaxRateContinuingOperationsAfterMinorityInterest": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents a ratio calculated by dividing the reported amount of income tax expense attributable to continuing operations for the period by GAAP-basis pretax income from continuing operations after adjusting for minority interest.", "label": "Effective Income Tax Rate Continuing Operations after Minority Interest", "verboseLabel": "Effective tax rate on income before provision for income taxes and noncontrolling interests (as a percent)" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperationsAfterMinorityInterest", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureIncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "prim_EquityIncentivePlan2013Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This element represents the 2013 Equity Incentive Plan of the entity.", "label": "Equity Incentive Plan2013 [Member]", "terseLabel": "Equity Plan" } } }, "localname": "EquityIncentivePlan2013Member", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareAntiDilutiveSharesDetails", "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails", "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "domainItemType" }, "prim_GrossProfitAsPercentageOfSegmentRevenue": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the gross profit represented as a percentage of total segment revenue.", "label": "Gross Profit as Percentage of Segment Revenue", "terseLabel": "% of Revenue" } } }, "localname": "GrossProfitAsPercentageOfSegmentRevenue", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails" ], "xbrltype": "percentItemType" }, "prim_IncomeTaxPeriodOfStatuteOfLimitationsOfStateAndForeignJurisdictionsMaximum": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the maximum period of statute of limitations of state and foreign jurisdictions.", "label": "Income Tax Period Of Statute Of Limitations Of State And Foreign Jurisdictions Maximum", "terseLabel": "Maximum period of statute of limitations of state and foreign jurisdictions" } } }, "localname": "IncomeTaxPeriodOfStatuteOfLimitationsOfStateAndForeignJurisdictionsMaximum", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureIncomeTaxesDetails" ], "xbrltype": "durationItemType" }, "prim_IncomeTaxPeriodOfStatuteOfLimitationsOfStateAndForeignJurisdictionsMinimum": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the minimum period of statute of limitations of state and foreign jurisdictions.", "label": "Income Tax Period Of Statute Of Limitations Of State And Foreign Jurisdictions Minimum", "terseLabel": "Minimum period of statute of limitations of state and foreign jurisdictions" } } }, "localname": "IncomeTaxPeriodOfStatuteOfLimitationsOfStateAndForeignJurisdictionsMinimum", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureIncomeTaxesDetails" ], "xbrltype": "durationItemType" }, "prim_IncreaseDecreaseInContractWithCustomerAssetNetCurrent": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in contract with customer asset net current.", "label": "Increase (Decrease) in Contract with Customer Asset Net Current", "terseLabel": "Increase (decrease) in contract assets" } } }, "localname": "IncreaseDecreaseInContractWithCustomerAssetNetCurrent", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails" ], "xbrltype": "monetaryItemType" }, "prim_IncreaseDecreaseInContractWithCustomerLiabilityCurrent": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in contract with customers liability current.", "label": "Increase (Decrease) in Contract with Customer Liability Current", "verboseLabel": "Decrease in contract liabilities" } } }, "localname": "IncreaseDecreaseInContractWithCustomerLiabilityCurrent", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prim_IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities": { "auth_ref": [], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in operating lease assets and liabilities.", "label": "Increase Decrease in Operating Lease Assets and Liabilities", "negatedLabel": "Operating lease assets and liabilities, net" } } }, "localname": "IncreaseDecreaseInOperatingLeaseAssetsAndLiabilities", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "prim_IncrementalCommonSharesAttributableToSharesIssuedToIndependentDirectorsUnderShareBasedPaymentArrangements": { "auth_ref": [], "calculation": { "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails": { "order": 2.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-US": { "role": { "documentation": "Represents the additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of shares issued to independent directors under share based payment arrangements.", "label": "Incremental Common Shares Attributable to Shares Issued to Independent Directors under Share Based Payment Arrangements", "terseLabel": "Dilutive effect of shares issued to independent directors" } } }, "localname": "IncrementalCommonSharesAttributableToSharesIssuedToIndependentDirectorsUnderShareBasedPaymentArrangements", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails" ], "xbrltype": "sharesItemType" }, "prim_InterestRateSwapAgreementPercentageOfDebtOutstandingInWhichInterestExchanged": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the percentage of debt outstanding in which the interest rate was effectively exchanged", "label": "Interest Rate Swap Agreement, Percentage Of Debt Outstanding In Which Interest Exchanged", "terseLabel": "Interest rate swap agreement", "verboseLabel": "Notional amount interest rate" } } }, "localname": "InterestRateSwapAgreementPercentageOfDebtOutstandingInWhichInterestExchanged", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails", "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails" ], "xbrltype": "percentItemType" }, "prim_JamesConstructionGroupLLCMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents information pertaining to James Construction Group LLC, an acquiree of the entity.", "label": "James Construction Group L L C [Member]", "terseLabel": "JCG" } } }, "localname": "JamesConstructionGroupLLCMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "domainItemType" }, "prim_LesseeOperatingLeaseLiabilityTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The tabular disclosure of operating lease liabilities.", "label": "Lessee Operating Lease Liability [Table Text Block]", "terseLabel": "Summary of operating lease liabilities" } } }, "localname": "LesseeOperatingLeaseLiabilityTableTextBlock", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesTables" ], "xbrltype": "textBlockItemType" }, "prim_LitigationCostsCodefendantPercentage": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the percentage of expected costs towards the settlement that the co-defendant would pay.", "label": "Litigation Costs CoDefendant Percentage", "terseLabel": "Percentage of expected costs second defendant would pay" } } }, "localname": "LitigationCostsCodefendantPercentage", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "percentItemType" }, "prim_LitigationCostsCompanyPercentage": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the percentage of expected costs towards the settlement that the Company would pay.", "label": "Litigation Costs Company Percentage", "terseLabel": "Percentage of expected costs Company would pay" } } }, "localname": "LitigationCostsCompanyPercentage", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "percentItemType" }, "prim_LitigationSettlementExpectedRemediationCost": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Represents the amount of total expected remediation costs.", "label": "Litigation Settlement, Expected Remediation Cost", "terseLabel": "Expected remediation cost" } } }, "localname": "LitigationSettlementExpectedRemediationCost", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "monetaryItemType" }, "prim_LitigationSettlementIncreaseInLiability": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The amount of increase in liability.", "label": "Litigation Settlement, Increase in Liability", "terseLabel": "Increase in liability" } } }, "localname": "LitigationSettlementIncreaseInLiability", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "monetaryItemType" }, "prim_LitigationSettlementPaymentsByDefendantsInExpectedCosts": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount provided by defendants in expected costs toward the settlement.", "label": "Litigation Settlement, Payments by Defendants in Expected Costs", "verboseLabel": "Agreed payments by second defendant in expected remediation costs toward settlement" } } }, "localname": "LitigationSettlementPaymentsByDefendantsInExpectedCosts", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "monetaryItemType" }, "prim_LitigationSettlementRemainingAccrualBalance": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of remaining accrual balance which is to be paid to third-party contractor", "label": "Litigation Settlement Remaining Accrual Balance", "terseLabel": "Remaining accrual balance" } } }, "localname": "LitigationSettlementRemainingAccrualBalance", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "monetaryItemType" }, "prim_LitigationSettlementRemediationExpense": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The amount of remediation expense incurred.", "label": "Litigation Settlement, Remediation Expense", "terseLabel": "Remediation costs" } } }, "localname": "LitigationSettlementRemediationExpense", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "monetaryItemType" }, "prim_LongTermRetentionPlanMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This element represents the Long-Term Retention Plan of the entity.", "label": "Long Term Retention Plan [Member]", "terseLabel": "LTR Plan" } } }, "localname": "LongTermRetentionPlanMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "domainItemType" }, "prim_MasterServiceAgreementCustomersMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This member stands for MSA customers.", "label": "Master Service Agreement Customers [Member]", "terseLabel": "MSA" } } }, "localname": "MasterServiceAgreementCustomersMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "prim_NatureOfBusinessLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Nature of Business [Line Items]", "terseLabel": "Nature of Business" } } }, "localname": "NatureOfBusinessLineItems", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNatureOfBusinessDetails" ], "xbrltype": "stringItemType" }, "prim_NonMasterServiceAgreementCustomersMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This member stands for Non-MSA customers.", "label": "Non Master Service Agreement Customers [Member]", "terseLabel": "Non-MSA" } } }, "localname": "NonMasterServiceAgreementCustomersMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "prim_NonUnitedStatesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents regions excluding the United States.", "label": "Non United States [Member]", "terseLabel": "Non-United States" } } }, "localname": "NonUnitedStatesMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsRevenueAndTotalAssetsByGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "prim_NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents information pertaining to North Texas Tollway Authority v. James Construction Group, LLC, an action filed against the entity.", "label": "North Texas Tollway Authority V James Construction Group L L C [Member]", "terseLabel": "North Texas Tollway Authority v. James Construction Group, LLC" } } }, "localname": "NorthTexasTollwayAuthorityVJamesConstructionGroupLLCMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "domainItemType" }, "prim_NumberOfInstrumentsUsedForTrading": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents the number of instruments used for trading.", "label": "Number Of Instruments Used For Trading", "terseLabel": "Number of Instruments used for trading" } } }, "localname": "NumberOfInstrumentsUsedForTrading", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails" ], "xbrltype": "integerItemType" }, "prim_PAndUSegmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Pertaining to the Pipeline and Underground segment.", "label": "P And U Segment [Member]", "terseLabel": "Pipeline" } } }, "localname": "PAndUSegmentMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "prim_PIAndESegmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Pertains to the Power, Industrial and Engineering segment.", "label": "P I And E Segment [Member]", "terseLabel": "Power" } } }, "localname": "PIAndESegmentMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "prim_PipelineCustomerMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents a pipeline customer.", "label": "Pipeline Customer [Member]", "terseLabel": "Pipeline Customer [Member]" } } }, "localname": "PipelineCustomerMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "domainItemType" }, "prim_PotentialIncreasePerAccordionFeature": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The amount that the debt instrument can increase per the accordian feature.", "label": "Potential Increase per Accordion Feature", "terseLabel": "Potential increase per the agreement" } } }, "localname": "PotentialIncreasePerAccordionFeature", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "prim_RevenuePercentage": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The percentage of revenue to total revenue.", "label": "Revenue, Percentage", "terseLabel": "% of Total Revenue", "verboseLabel": "% of Revenue" } } }, "localname": "RevenuePercentage", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsRevenueAndTotalAssetsByGeographicAreaDetails" ], "xbrltype": "percentItemType" }, "prim_RevenueRemainingPerformanceObligationExpectedTimingPercentage": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Percentage of revenue to be recognized on performance obligations for the period.", "label": "Revenue Remaining Performance Obligation Expected Timing Percentage", "terseLabel": "Percentage of remaining performance obligation expected to be recognized in period" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingPercentage", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligations2020Details" ], "xbrltype": "percentItemType" }, "prim_ScheduleOfCarryingValueOfAssetsAndLiabilitiesOfVariableInterestEntitiesIncludedInConsolidatedFinancialStatementsTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the carrying value of the assets and liabilities of the variable interest entity (VIE) included in the entity's consolidated financial statements.", "label": "Schedule of Carrying Value of Assets and Liabilities of Variable Interest Entities Included in Consolidated Financial Statements [Table Text Block]", "terseLabel": "Schedule of the carrying value of the assets and liabilities included in the Company's consolidated balance sheets" } } }, "localname": "ScheduleOfCarryingValueOfAssetsAndLiabilitiesOfVariableInterestEntitiesIncludedInConsolidatedFinancialStatementsTableTextBlock", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsTables" ], "xbrltype": "textBlockItemType" }, "prim_ScheduleOfNatureOfBusinessTable": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Schedule of Nature of Business [Table]" } } }, "localname": "ScheduleOfNatureOfBusinessTable", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNatureOfBusinessDetails" ], "xbrltype": "stringItemType" }, "prim_ScheduleOfOperatingActivitiesOfVariableInterestEntitiesIncludedInConsolidatedIncomeStatementTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of operating activities of the variable interest entity (VIE) included in the entity's consolidated income statement.", "label": "Schedule of Operating Activities of Variable Interest Entities Included in Consolidated Income Statement [Table Text Block]", "verboseLabel": "Schedule of joint venture operating activities included in the Company's consolidated statements of income" } } }, "localname": "ScheduleOfOperatingActivitiesOfVariableInterestEntitiesIncludedInConsolidatedIncomeStatementTableTextBlock", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsTables" ], "xbrltype": "textBlockItemType" }, "prim_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsToVestNumberOfShares": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that are scheduled to vest.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, To Vest, Number of Shares", "terseLabel": "Number of Units to Vest" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsToVestNumberOfShares", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "sharesItemType" }, "prim_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingVestedNumber": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Number of vested equity instruments other than options outstanding.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Non-Option Equity Instruments, Outstanding Vested, Number", "terseLabel": "Number of vested units" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingVestedNumber", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "sharesItemType" }, "prim_ShareBasedCompensationAwardTrancheFourMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Fourth portion of share-based compensation award differentiated by a particular vesting feature, including, but not limited to, performance measure or service period.", "label": "Share Based Compensation Award Tranche Four [Member]", "terseLabel": "2023" } } }, "localname": "ShareBasedCompensationAwardTrancheFourMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "prim_StockholdersEquityLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Stockholders Equity [Line Items]", "terseLabel": "Stockholders' equity" } } }, "localname": "StockholdersEquityLineItems", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "stringItemType" }, "prim_TopTenCustomersMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Represents information pertaining to the top ten customers of the entity.", "label": "Top Ten Customers [Member]", "terseLabel": "Top ten customers" } } }, "localname": "TopTenCustomersMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "domainItemType" }, "prim_TotalAssetsPercentage": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The percentage of assets to total assets.", "label": "% of total assets" } } }, "localname": "TotalAssetsPercentage", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsRevenueAndTotalAssetsByGeographicAreaDetails" ], "xbrltype": "percentItemType" }, "prim_UAndDSegmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Pertaining to the Utilities and Distribution segment.", "label": "U And D Segment [Member]", "terseLabel": "Utilities" } } }, "localname": "UAndDSegmentMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "prim_UnitPriceContractsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This member stands for Unit-price contract.", "label": "Unit Price Contracts [Member]", "terseLabel": "Unit price" } } }, "localname": "UnitPriceContractsMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "prim_UtilityTransmissionAndDistributionMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This member represents information regarding Transmission and Distribution segment.", "label": "Utility Transmission And Distribution [Member]", "terseLabel": "Transmission" } } }, "localname": "UtilityTransmissionAndDistributionMember", "nsuri": "http://www.primoriscorp.com/20200504", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "srt_ExecutiveOfficerMember": { "auth_ref": [ "r123" ], "lang": { "en-US": { "role": { "label": "Executive Officer [Member]", "terseLabel": "Executives" } } }, "localname": "ExecutiveOfficerMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "srt_LitigationCaseAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Litigation Case [Axis]" } } }, "localname": "LitigationCaseAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "stringItemType" }, "srt_LitigationCaseTypeDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Litigation Case Type [Domain]", "terseLabel": "Litigation Case [Domain]" } } }, "localname": "LitigationCaseTypeDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r121", "r177", "r181", "r321" ], "lang": { "en-US": { "role": { "label": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "stringItemType" }, "srt_MaximumMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails", "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Name Of Major Customer [Domain]", "terseLabel": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "srt_OwnershipAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Ownership [Axis]" } } }, "localname": "OwnershipAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNatureOfBusinessDetails", "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "stringItemType" }, "srt_OwnershipDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Ownership [Domain]", "terseLabel": "Ownership [Domain]" } } }, "localname": "OwnershipDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNatureOfBusinessDetails", "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Range [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails", "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails", "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Range [Member]", "terseLabel": "Range [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails", "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails", "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Segment Geographical [Domain]", "terseLabel": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsRevenueAndTotalAssetsByGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r120", "r177", "r180", "r320", "r327", "r328" ], "lang": { "en-US": { "role": { "label": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsRevenueAndTotalAssetsByGeographicAreaDetails" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualAxis": { "auth_ref": [ "r123", "r280" ], "lang": { "en-US": { "role": { "label": "Title of Individual [Axis]" } } }, "localname": "TitleOfIndividualAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Title Of Individual With Relationship To Entity [Domain]", "terseLabel": "Relationship to Entity [Domain]" } } }, "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Basis of Presentation" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": { "auth_ref": [ "r25" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.", "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]", "terseLabel": "Accounts Payable and Accrued Liabilities" } } }, "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilities" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r24" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts Payable, Current", "terseLabel": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedInsuranceCurrent": { "auth_ref": [ "r4", "r5", "r29" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable to insurance entities to mitigate potential loss from various risks or to satisfy a promise to provide certain coverage's to employees. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Insurance, Current", "terseLabel": "Casualty insurance reserves" } } }, "localname": "AccruedInsuranceCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r29" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Liabilities, Current", "terseLabel": "Accrued liabilities", "totalLabel": "Total accrued liabilities" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Accrued Liabilities, Current [Abstract]", "terseLabel": "Accrued liabilities" } } }, "localname": "AccruedLiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r45", "r46", "r47" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive (loss) income" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r44", "r47", "r48", "r223" ], "lang": { "en-US": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "Accumulated Other Comprehensive Income [Member]", "terseLabel": "Accumulated Other Comprehensive Income (Loss)" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "auth_ref": [ "r16" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.", "label": "Additional Paid in Capital, Common Stock", "terseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapitalCommonStock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid In Capital [Member]", "terseLabel": "Additional Paid-in Capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for restricted stock unit under share-based payment arrangement.", "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Restricted Stock Unit or Restricted Stock Award, Requisite Service Period Recognition", "terseLabel": "Amortization of Restricted Stock Units" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Adjustments to reconcile net (loss) income to net cash used in operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllocatedShareBasedCompensationExpense": { "auth_ref": [ "r188", "r196", "r199" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.", "label": "Allocated Share-based Compensation Expense", "terseLabel": "Compensation expense recognized" } } }, "localname": "AllocatedShareBasedCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r81", "r130", "r136" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.", "label": "Amortization of Intangible Assets", "terseLabel": "Amortization expense of intangible assets" } } }, "localname": "AmortizationOfIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r102" ], "lang": { "en-US": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "terseLabel": "Anti-dilutive shares" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareAntiDilutiveSharesDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "auth_ref": [ "r102" ], "lang": { "en-US": { "role": { "documentation": "Information by type of antidilutive security.", "label": "Antidilutive Securities [Axis]" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareAntiDilutiveSharesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "terseLabel": "Anti-dilutive shares" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareAntiDilutiveSharesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "auth_ref": [ "r102" ], "lang": { "en-US": { "role": { "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented.", "label": "Antidilutive Securities Name [Domain]", "terseLabel": "Antidilutive Securities, Name [Domain]" } } }, "localname": "AntidilutiveSecuritiesNameDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareAntiDilutiveSharesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Assets": { "auth_ref": [ "r116", "r294", "r307" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Assets [Abstract]", "terseLabel": "ASSETS" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsAndLiabilitiesLesseeAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Assets and Liabilities, Lessee [Abstract]", "terseLabel": "Operating lease liabilities" } } }, "localname": "AssetsAndLiabilitiesLesseeAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r2", "r3", "r38" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "Current assets:" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsFairValueDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Assets, Fair Value Disclosure [Abstract]", "terseLabel": "Assets" } } }, "localname": "AssetsFairValueDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r190", "r198" ], "lang": { "en-US": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails", "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetLocationAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Information by location on balance sheet (statement of financial position).", "label": "Balance Sheet Location [Axis]" } } }, "localname": "BalanceSheetLocationAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetLocationDomain": { "auth_ref": [ "r236", "r241" ], "lang": { "en-US": { "role": { "documentation": "Location in the balance sheet (statement of financial position).", "label": "Balance Sheet Location [Domain]", "terseLabel": "Balance Sheet Location [Domain]" } } }, "localname": "BalanceSheetLocationDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r92" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity.", "label": "Basis of Presentation and Significant Accounting Policies [Text Block]", "terseLabel": "Basis of Presentation" } } }, "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentation" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.", "label": "Business Acquisition Acquiree [Domain]", "terseLabel": "Business Acquisition, Acquiree [Domain]" } } }, "localname": "BusinessAcquisitionAcquireeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r208", "r209" ], "lang": { "en-US": { "role": { "documentation": "Information by business combination or series of individually immaterial business combinations.", "label": "Business Acquisition [Axis]" } } }, "localname": "BusinessAcquisitionAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationAsset1": { "auth_ref": [ "r80", "r216" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in the value of right to a contingent consideration asset.", "label": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Asset", "terseLabel": "Change in contingent consideration" } } }, "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationAsset1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationAsset": { "auth_ref": [ "r213", "r214", "r215" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of asset recognized arising from contingent consideration in a business combination.", "label": "Business Combination, Contingent Consideration, Asset", "terseLabel": "Earnout" } } }, "localname": "BusinessCombinationContingentConsiderationAsset", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationAssetAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Business Combination, Contingent Consideration, Asset [Abstract]", "terseLabel": "Contingent consideration" } } }, "localname": "BusinessCombinationContingentConsiderationAssetAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_Cash": { "auth_ref": [ "r22", "r323", "r324" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash", "terseLabel": "Cash" } } }, "localname": "Cash", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r1", "r22", "r83" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash and Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Fair value portion of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash and Cash Equivalents, Fair Value Disclosure", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r77", "r83", "r85" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents at end of the year", "periodStartLabel": "Cash and cash equivalents at beginning of the year" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r77", "r263" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "Net change in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ClassificationOfVariableInterestEntityDomain": { "auth_ref": [ "r225", "r226", "r227", "r228" ], "lang": { "en-US": { "role": { "documentation": "Categorization of Variable Interest Entities (VIE) for consolidation and (or) disclosure purposes, whether individually or in aggregate, by: (1) VIEs consolidated because the entity is the primary beneficiary, (2) VIEs not consolidated because the entity is not the primary beneficiary, and (3) VIEs or potential VIEs that are not consolidated because necessary information is not available. In general, a VIE is a corporation, partnership, trust, or any other legal structure used for business purposes that either (a) does not have equity investors with voting rights or (b) has equity investors that do not provide sufficient financial resources for the entity to support its activities. A VIE often holds financial assets, including loans or receivables, real estate or other property. A VIE may be essentially passive or it may engage in research and development or other activities on behalf of another company.", "label": "Classification Of Variable Interest Entity [Domain]", "terseLabel": "Variable Interest Entity, Classification [Domain]" } } }, "localname": "ClassificationOfVariableInterestEntityDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r33", "r146", "r299", "r315" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.", "label": "Commitments and Contingencies", "verboseLabel": "Commitments and contingencies (See Note 16)" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Commitments and Contingencies." } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r145", "r153" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "Commitments and Contingencies" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockDividendsPerShareDeclared": { "auth_ref": [ "r165" ], "lang": { "en-US": { "role": { "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding.", "label": "Common Stock, Dividends, Per Share, Declared", "terseLabel": "Dividends per common share (in dollars per share)", "verboseLabel": "Cash dividend declared (in dollars per share)" } } }, "localname": "CommonStockDividendsPerShareDeclared", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails", "http://www.primoriscorp.com/role/DisclosureSubsequentEventsDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquityParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]", "terseLabel": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Common Stock, Number of Shares, Par Value and Other Disclosures [Abstract]", "terseLabel": "Common Stock" } } }, "localname": "CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r14" ], "lang": { "en-US": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share", "terseLabel": "Common stock, par value (in dollars per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r14" ], "lang": { "en-US": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r14" ], "lang": { "en-US": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r14", "r160" ], "lang": { "en-US": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding", "terseLabel": "Common stock, shares outstanding" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r14" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value, Issued", "verboseLabel": "Common stock-$.0001 par value; 90,000,000 shares authorized; 48,254,575 and 48,665,138 issued and outstanding at March 31, 2020 and December 31, 2019, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r50", "r52", "r53" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive (loss) income attributable to Primoris" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]", "terseLabel": "Other comprehensive (loss) income, net of tax:" } } }, "localname": "ComprehensiveIncomeNetOfTaxAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome" ], "xbrltype": "stringItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r50", "r52", "r219", "r231" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest", "totalLabel": "Comprehensive (loss) income" } } }, "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r108", "r109", "r257", "r258" ], "lang": { "en-US": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.", "label": "Concentration Risk Benchmark [Domain]", "terseLabel": "Concentration Risk Benchmark [Domain]" } } }, "localname": "ConcentrationRiskBenchmarkDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r108", "r109", "r257", "r258", "r322" ], "lang": { "en-US": { "role": { "documentation": "Information by benchmark of concentration risk.", "label": "Concentration Risk Benchmark [Axis]" } } }, "localname": "ConcentrationRiskByBenchmarkAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskByTypeAxis": { "auth_ref": [ "r108", "r109", "r257", "r258", "r322" ], "lang": { "en-US": { "role": { "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.", "label": "Concentration Risk Type [Axis]" } } }, "localname": "ConcentrationRiskByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Concentration Risk [Line Items]", "terseLabel": "Customer concentration" } } }, "localname": "ConcentrationRiskLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r108", "r109", "r257", "r258" ], "lang": { "en-US": { "role": { "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.", "label": "Concentration Risk, Percentage", "terseLabel": "Percentage of concentration risk" } } }, "localname": "ConcentrationRiskPercentage1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTable": { "auth_ref": [ "r106", "r108", "r109", "r110", "r257", "r259" ], "lang": { "en-US": { "role": { "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.", "label": "Concentration Risk [Table]" } } }, "localname": "ConcentrationRiskTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskTypeDomain": { "auth_ref": [ "r108", "r109", "r257", "r258" ], "lang": { "en-US": { "role": { "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.", "label": "Concentration Risk Type [Domain]", "terseLabel": "Concentration Risk Type [Domain]" } } }, "localname": "ConcentrationRiskTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractReceivableRetainage": { "auth_ref": [ "r35", "r290" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails": { "order": 1.0, "parentTag": "us-gaap_ContractWithCustomerAssetNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount billed to customers under long-term contracts or programs that have been withheld because of retainage provisions in a contract.", "label": "Contract Receivable Retainage", "terseLabel": "Retention receivable" } } }, "localname": "ContractReceivableRetainage", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueModificationOfContract": { "auth_ref": [ "r172" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in revenue recognized for cumulative catch-up adjustment from contract modification which increases (decreases) right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.", "label": "Contract with Customer, Asset, Cumulative Catch-up Adjustment to Revenue, Modification of Contract", "terseLabel": "Amount of unapproved contract modifications recognized as revenue on a cumulative catch-up basis" } } }, "localname": "ContractWithCustomerAssetCumulativeCatchUpAdjustmentToRevenueModificationOfContract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "auth_ref": [ "r169", "r171", "r178" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.", "label": "Contract with Customer, Asset, Net, Current", "terseLabel": "Contract assets", "totalLabel": "Contract assets" } } }, "localname": "ContractWithCustomerAssetNetCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerBasisOfPricingAxis": { "auth_ref": [ "r182" ], "lang": { "en-US": { "role": { "documentation": "Information by basis of pricing for contract representing right to consideration in exchange for good or service transferred to customer.", "label": "Contract with Customer, Basis of Pricing [Axis]" } } }, "localname": "ContractWithCustomerBasisOfPricingAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ContractWithCustomerBasisOfPricingDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Basis of pricing for contract with customer. Includes, but is not limited to, fixed-price and time-and-materials contracts.", "label": "Contract With Customer Basis Of Pricing [Domain]", "terseLabel": "Contract with Customer, Basis of Pricing [Domain]" } } }, "localname": "ContractWithCustomerBasisOfPricingDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r169", "r170", "r178" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract with Customer, Liability, Current", "terseLabel": "Contract liabilities", "totalLabel": "Contract liabilities" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r179" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Contract with Customer, Liability, Revenue Recognized", "terseLabel": "Revenue recognized included in contract liability at beginning of period" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod": { "auth_ref": [ "r173" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of revenue recognized from performance obligation satisfied or partially satisfied in previous reporting periods. Includes, but is not limited to, change in transaction price.", "label": "Contract with Customer, Performance Obligation Satisfied in Previous Period", "terseLabel": "Revenue recognized from performance obligations satisfied in previous periods" } } }, "localname": "ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r62" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.", "label": "Cost of Services, Excluding Depreciation, Depletion, and Amortization", "terseLabel": "Cost of revenue" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_CreditFacilityAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Axis]" } } }, "localname": "CreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CreditFacilityDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Domain]", "terseLabel": "Credit Facility [Domain]" } } }, "localname": "CreditFacilityDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerConcentrationRiskMember": { "auth_ref": [ "r107" ], "lang": { "en-US": { "role": { "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.", "label": "Customer Concentration Risk [Member]", "terseLabel": "Customer concentration" } } }, "localname": "CustomerConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r212" ], "lang": { "en-US": { "role": { "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.", "label": "Customer Relationships [Member]", "terseLabel": "Customer relationships" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Credit Arrangements" } } }, "localname": "DebtDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_DebtDisclosureTextBlock": { "auth_ref": [ "r159" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.", "label": "Debt Disclosure [Text Block]", "terseLabel": "Credit Arrangements" } } }, "localname": "DebtDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangements" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentCarryingAmount": { "auth_ref": [ "r11", "r157", "r296", "r305" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetailsCal2": { "order": 1.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.", "label": "Long-term Debt, Gross", "terseLabel": "Total debt" } } }, "localname": "DebtInstrumentCarryingAmount", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Debt Instrument [Line Items]", "terseLabel": "Credit arrangements" } } }, "localname": "DebtInstrumentLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails", "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentTable": { "auth_ref": [ "r31", "r88", "r161", "r162", "r163", "r164", "r266", "r267", "r269", "r304" ], "lang": { "en-US": { "role": { "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.", "label": "Schedule of Long-term Debt Instruments [Table]" } } }, "localname": "DebtInstrumentTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails", "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtWeightedAverageInterestRate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Weighted average interest rate of debt outstanding.", "label": "Debt, Weighted Average Interest Rate", "terseLabel": "Weighted average interest rate (as a percent)" } } }, "localname": "DebtWeightedAverageInterestRate", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r204" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.", "label": "Deferred Income Tax Assets, Net", "terseLabel": "Deferred tax assets" } } }, "localname": "DeferredIncomeTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "auth_ref": [ "r201", "r204" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.", "label": "Deferred Tax Liabilities, Net, Noncurrent", "verboseLabel": "Deferred tax liabilities" } } }, "localname": "DeferredIncomeTaxLiabilitiesNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationDepletionAndAmortization": { "auth_ref": [ "r81", "r114" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.", "label": "Depreciation, Depletion and Amortization", "terseLabel": "Depreciation and amortization" } } }, "localname": "DepreciationDepletionAndAmortization", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeContractTypeDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset.", "label": "Derivative Contract Type [Domain]", "terseLabel": "Derivative Contract [Domain]" } } }, "localname": "DerivativeContractTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails", "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails", "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DerivativeFairValueOfDerivativeLiability": { "auth_ref": [ "r39", "r42", "r239", "r289" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Fair value, before effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities elected not to be offset. Excludes liabilities not subject to a master netting arrangement.", "label": "Derivative Liability, Fair Value, Gross Liability", "terseLabel": "Derivative liability" } } }, "localname": "DerivativeFairValueOfDerivativeLiability", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeInstrumentRiskAxis": { "auth_ref": [ "r237", "r240", "r242", "r245" ], "lang": { "en-US": { "role": { "documentation": "Information by type of derivative contract.", "label": "Derivative Instrument [Axis]" } } }, "localname": "DerivativeInstrumentRiskAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails", "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails", "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Derivative Instruments" } } }, "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": { "auth_ref": [ "r247" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.", "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]", "terseLabel": "Derivative Instruments" } } }, "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstruments" ], "xbrltype": "textBlockItemType" }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Derivative Instruments and Hedging Activities Disclosures [Line Items]", "terseLabel": "Derivative Instruments" } } }, "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails", "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about derivatives and hedging activities.", "label": "Derivative Instruments and Hedging Activities Disclosures [Table]" } } }, "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails", "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeLiabilities": { "auth_ref": [ "r40", "r41", "r256" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Fair value, after the effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities not subject to a master netting arrangement and not elected to be offset.", "label": "Derivative Liability", "terseLabel": "Liability Derivatives" } } }, "localname": "DerivativeLiabilities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeLiabilityNotionalAmount": { "auth_ref": [ "r233", "r234", "r235" ], "lang": { "en-US": { "role": { "documentation": "Nominal or face amount used to calculate payments on the derivative liability.", "label": "Derivative Liability, Notional Amount", "terseLabel": "Notional Amount" } } }, "localname": "DerivativeLiabilityNotionalAmount", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeLossOnDerivative": { "auth_ref": [ "r238" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of decrease in the fair value of derivatives recognized in the income statement.", "label": "Derivative, Loss on Derivative", "terseLabel": "Amount of Loss Recognized on Derivatives" } } }, "localname": "DerivativeLossOnDerivative", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Disaggregation of Revenue" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table]" } } }, "localname": "DisaggregationOfRevenueTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r177" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Schedule of revenue disaggregation by various categories" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r200" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Disclosure of Compensation Related Costs, Share-based Payments [Text Block]", "terseLabel": "Stock-Based Compensation" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Stock-Based Compensation" } } }, "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_DividendsCashAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Dividends, Cash [Abstract]", "terseLabel": "Cash Dividend" } } }, "localname": "DividendsCashAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DividendsCommonStockCash": { "auth_ref": [ "r165" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash.", "label": "Dividends, Common Stock, Cash", "negatedLabel": "Dividends declared" } } }, "localname": "DividendsCommonStockCash", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_DividendsDeclaredTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of information related to dividends declared, including paid and unpaid dividends.", "label": "Dividends Declared [Table Text Block]", "terseLabel": "Schedule of cash dividends paid or declared" } } }, "localname": "DividendsDeclaredTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DividendsPayableCurrent": { "auth_ref": [ "r5", "r29" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of dividends declared but unpaid on equity securities issued by the entity and outstanding. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Dividends Payable, Current", "terseLabel": "Dividends payable" } } }, "localname": "DividendsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DividendsPayableCurrentAndNoncurrent": { "auth_ref": [ "r10", "r12", "r295", "r308" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of dividends declared but unpaid on equity securities issued by the entity and outstanding.", "label": "Dividends Payable", "terseLabel": "Dividends declared and not yet paid" } } }, "localname": "DividendsPayableCurrentAndNoncurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DueFromAffiliateNoncurrent": { "auth_ref": [ "r7", "r87", "r279", "r280", "r281", "r282", "r293", "r306", "r325" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of receivables due from an entity that is affiliated with the reporting entity by means of direct or indirect ownership, due after 1 year (or 1 business cycle).", "label": "Due from Affiliate, Noncurrent", "terseLabel": "Due from Primoris" } } }, "localname": "DueFromAffiliateNoncurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Earnings Per Share", "verboseLabel": "(Loss) earnings per share:" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r59", "r93", "r97", "r99", "r100", "r101", "r104", "r302", "r317" ], "lang": { "en-US": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Earnings Per Share, Basic", "terseLabel": "Basic (in dollars per share)", "verboseLabel": "Basic earnings per share (in dollars per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareBasicAndDilutedAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Earnings Per Share, Basic and Diluted [Abstract]", "terseLabel": "(loss) earnings per share attributable to Primoris:" } } }, "localname": "EarningsPerShareBasicAndDilutedAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r59", "r93", "r97", "r99", "r100", "r101", "r104", "r302", "r317" ], "lang": { "en-US": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Earnings Per Share, Diluted", "terseLabel": "Diluted (in dollars per share)", "verboseLabel": "Diluted earnings per share (in dollars per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "perShareItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r263" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "terseLabel": "Effect of exchange rate changes on cash and cash equivalents" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r90", "r202", "r203" ], "lang": { "en-US": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective tax rate on income before provision for income taxes including income attributable to noncontrolling interests (as a percent)" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureIncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "auth_ref": [ "r202", "r203", "r205" ], "lang": { "en-US": { "role": { "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).", "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "terseLabel": "Federal statutory income tax rate (as a percent)" } } }, "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureIncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r29" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Employee-related Liabilities, Current", "terseLabel": "Payroll and related employee benefits" } } }, "localname": "EmployeeRelatedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r197" ], "lang": { "en-US": { "role": { "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition", "terseLabel": "Period to recognize unrecognized compensation expense" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": { "auth_ref": [ "r197" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.", "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Share-based Awards Other than Options", "terseLabel": "Unrecognized compensation expense" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r160" ], "lang": { "en-US": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]", "terseLabel": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "terseLabel": "Fair value measurements" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "auth_ref": [ "r248", "r249", "r250", "r254" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.", "label": "Fair Value Measurements, Recurring and Nonrecurring [Table]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r184", "r185", "r186", "r249", "r285" ], "lang": { "en-US": { "role": { "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.", "label": "Fair Value, Hierarchy [Axis]" } } }, "localname": "FairValueByFairValueHierarchyLevelAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "auth_ref": [ "r248", "r249", "r251", "r252", "r255" ], "lang": { "en-US": { "role": { "documentation": "Information by measurement frequency.", "label": "Measurement Frequency [Axis]" } } }, "localname": "FairValueByMeasurementFrequencyAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Fair Value Measurements" } } }, "localname": "FairValueDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresTextBlock": { "auth_ref": [ "r253" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.", "label": "Fair Value Disclosures [Text Block]", "terseLabel": "Fair Value Measurements" } } }, "localname": "FairValueDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurements" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueInputsLevel1Member": { "auth_ref": [ "r184", "r185", "r186", "r249", "r286" ], "lang": { "en-US": { "role": { "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.", "label": "Fair Value Inputs Level1 [Member]", "terseLabel": "Quoted Prices in Active Markets for Identical Assets (Level 1)" } } }, "localname": "FairValueInputsLevel1Member", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel2Member": { "auth_ref": [ "r184", "r185", "r186", "r249", "r287" ], "lang": { "en-US": { "role": { "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.", "label": "Fair Value Inputs Level2 [Member]", "terseLabel": "Significant Other Observable Inputs (Level2)" } } }, "localname": "FairValueInputsLevel2Member", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel3Member": { "auth_ref": [ "r184", "r185", "r186", "r249", "r288" ], "lang": { "en-US": { "role": { "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.", "label": "Fair Value Inputs Level3 [Member]", "terseLabel": "Significant Unobservable Inputs (Level 3)" } } }, "localname": "FairValueInputsLevel3Member", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementFrequencyDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Measurement frequency.", "label": "Fair Value Measurement Frequency [Domain]", "terseLabel": "Fair Value, Measurement Frequency [Domain]" } } }, "localname": "FairValueMeasurementFrequencyDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.", "label": "Fair Value Measurements Fair Value Hierarchy [Domain]", "terseLabel": "Fair Value Hierarchy [Domain]" } } }, "localname": "FairValueMeasurementsFairValueHierarchyDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsRecurringMember": { "auth_ref": [ "r253", "r255" ], "lang": { "en-US": { "role": { "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value.", "label": "Fair Value Measurements Recurring [Member]", "terseLabel": "Recurring" } } }, "localname": "FairValueMeasurementsRecurringMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Finite-Lived Intangible Asset, Useful Life", "terseLabel": "Weighted Average Life" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r135" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "negatedLabel": "Accumulated Amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": { "auth_ref": [], "calculation": { "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails": { "order": 6.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five", "terseLabel": "Thereafter" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "auth_ref": [], "calculation": { "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails": { "order": 1.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized in the remainder of the fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Remainder of Fiscal Year", "terseLabel": "2020 (remaining nine months)" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": { "auth_ref": [ "r137" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails": { "order": 5.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Five", "terseLabel": "2024" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "auth_ref": [ "r137" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails": { "order": 4.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four", "terseLabel": "2023" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "auth_ref": [ "r137" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails": { "order": 3.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three", "terseLabel": "2022" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "auth_ref": [ "r137" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails": { "order": 2.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two", "terseLabel": "2021" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r131", "r132", "r135", "r138", "r291" ], "lang": { "en-US": { "role": { "documentation": "Information by major type or class of finite-lived intangible assets.", "label": "Finite-Lived Intangible Assets by Major Class [Axis]" } } }, "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]", "terseLabel": "Estimated future amortization expense for intangible assets" } } }, "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r135", "r291" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Gross Carrying Amount" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Intangible assets" } } }, "localname": "FiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r131", "r134" ], "lang": { "en-US": { "role": { "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.", "label": "Finite Lived Intangible Assets Major Class Name [Domain]", "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FixedPriceContractMember": { "auth_ref": [ "r182" ], "lang": { "en-US": { "role": { "documentation": "Contract with customer in which amount of consideration is fixed.", "label": "Fixed Price Contract [Member]", "terseLabel": "Fixed price" } } }, "localname": "FixedPriceContractMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": { "auth_ref": [ "r260", "r261", "r262" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.", "label": "Foreign Currency Transaction Gain (Loss), before Tax", "terseLabel": "Foreign exchange (loss) gain" } } }, "localname": "ForeignCurrencyTransactionGainLossBeforeTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "auth_ref": [ "r81" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.", "label": "Gain (Loss) on Disposition of Property Plant Equipment", "negatedLabel": "Gain on sale of property and equipment" } } }, "localname": "GainLossOnSaleOfPropertyPlantEquipment", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r125", "r126" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "terseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Goodwill and Intangible Assets" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r139" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for goodwill and intangible assets.", "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "verboseLabel": "Goodwill and Intangible Assets" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssets" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Goodwill [Line Items]", "terseLabel": "Goodwill" } } }, "localname": "GoodwillLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r60" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross Profit", "terseLabel": "Gross Profit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r57", "r93", "r292", "r300", "r318" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_ProfitLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Extraordinary Items, Noncontrolling Interest", "totalLabel": "(Loss) income before provision for income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "CONSOLIDATED STATEMENTS OF INCOME" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r141" ], "lang": { "en-US": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location [Axis]" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Location in the income statement.", "label": "Income Statement Location [Domain]", "terseLabel": "Income Statement Location [Domain]" } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Income Taxes" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r207" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]", "terseLabel": "Income Taxes" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureIncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r86", "r115", "r206" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_ProfitLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "negatedLabel": "Provision for income taxes" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r84" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.", "label": "Income Taxes Paid", "terseLabel": "Cash paid for income taxes, net of refunds received" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r80" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "Increase (Decrease) in Accounts Payable", "terseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "auth_ref": [ "r80" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.", "label": "Increase (Decrease) in Accrued Liabilities", "verboseLabel": "Accrued liabilities" } } }, "localname": "IncreaseDecreaseInAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "auth_ref": [ "r80" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.", "label": "Increase (Decrease) in Contract with Customer, Asset", "negatedLabel": "Contract assets" } } }, "localname": "IncreaseDecreaseInContractWithCustomerAsset", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r80" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Increase (Decrease) in Contract with Customer, Liability", "terseLabel": "Contract liabilities" } } }, "localname": "IncreaseDecreaseInContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Changes in assets and liabilities:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherCurrentAssets": { "auth_ref": [ "r80" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in current assets classified as other.", "label": "Increase (Decrease) in Other Current Assets", "negatedLabel": "Other current assets" } } }, "localname": "IncreaseDecreaseInOtherCurrentAssets", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherNoncurrentAssets": { "auth_ref": [ "r80" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in noncurrent assets classified as other.", "label": "Increase (Decrease) in Other Noncurrent Assets", "negatedLabel": "Other long-term assets" } } }, "localname": "IncreaseDecreaseInOtherNoncurrentAssets", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": { "auth_ref": [], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 15.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other.", "label": "Increase (Decrease) in Other Noncurrent Liabilities", "terseLabel": "Other long-term liabilities" } } }, "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInReceivables": { "auth_ref": [ "r80" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in the total amount due within one year (or one operating cycle) from all parties, associated with underlying transactions that are classified as operating activities.", "label": "Increase (Decrease) in Receivables", "negatedLabel": "Accounts receivable" } } }, "localname": "IncreaseDecreaseInReceivables", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "terseLabel": "Increase (Decrease) in Stockholders' Equity Roll Forward" } } }, "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "auth_ref": [ "r98", "r103" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails": { "order": 3.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-US": { "role": { "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements", "terseLabel": "Dilutive effect of restricted stock units" } } }, "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "auth_ref": [ "r129", "r133" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.", "label": "Intangible Assets, Net (Excluding Goodwill)", "terseLabel": "Intangible assets, net", "totalLabel": "Total" } } }, "localname": "IntangibleAssetsNetExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r55", "r113", "r265", "r268", "r303" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 5.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.", "label": "Interest Expense", "negatedLabel": "Interest expense" } } }, "localname": "InterestExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpenseMember": { "auth_ref": [ "r244" ], "lang": { "en-US": { "role": { "documentation": "Primary financial statement caption encompassing interest expense.", "label": "Interest Expense [Member]", "terseLabel": "Interest expense" } } }, "localname": "InterestExpenseMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r75", "r78", "r84" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.", "label": "Interest Paid", "terseLabel": "Cash paid for interest" } } }, "localname": "InterestPaidNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestRateSwapMember": { "auth_ref": [ "r243" ], "lang": { "en-US": { "role": { "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period.", "label": "Interest Rate Swap [Member]", "terseLabel": "Interest rate swap" } } }, "localname": "InterestRateSwapMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails", "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDetails", "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_InventoryForLongTermContractsOrPrograms": { "auth_ref": [ "r37" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails": { "order": 2.0, "parentTag": "us-gaap_ContractWithCustomerAssetNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before valuation and LIFO reserves, and progress payments, of inventory associated with long-term contracts, expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventory for Long-term Contracts or Programs, Gross", "terseLabel": "Contract materials (not yet installed)" } } }, "localname": "InventoryForLongTermContractsOrPrograms", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InvestmentIncomeNet": { "auth_ref": [ "r64", "r65", "r66" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 4.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount after accretion (amortization) of discount (premium), and investment expense, of interest income and dividend income on nonoperating securities.", "label": "Investment Income, Interest", "terseLabel": "Interest income" } } }, "localname": "InvestmentIncomeNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseCostAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Components of lease expense" } } }, "localname": "LeaseCostAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LeaseCostTableTextBlock": { "auth_ref": [ "r276" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.", "label": "Lease, Cost [Table Text Block]", "terseLabel": "Summary of components of lease expense" } } }, "localname": "LeaseCostTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LeasesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Leases" } } }, "localname": "LeasesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend": { "auth_ref": [ "r273" ], "lang": { "en-US": { "role": { "documentation": "Indicates (true false) whether lessee has option to extend operating lease.", "label": "Lessee, Operating Lease, Existence of Option to Extend [true false]", "terseLabel": "Options to extend leases" } } }, "localname": "LesseeOperatingLeaseExistenceOfOptionToExtend", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "booleanItemType" }, "us-gaap_LesseeOperatingLeaseRenewalTerm": { "auth_ref": [ "r273" ], "lang": { "en-US": { "role": { "documentation": "Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Lessee, Operating Lease, Renewal Term", "terseLabel": "Renewal term" } } }, "localname": "LesseeOperatingLeaseRenewalTerm", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "durationItemType" }, "us-gaap_LesseeOperatingLeasesTextBlock": { "auth_ref": [ "r278" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.", "label": "Lessee, Operating Leases [Text Block]", "terseLabel": "Leases" } } }, "localname": "LesseeOperatingLeasesTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeases" ], "xbrltype": "textBlockItemType" }, "us-gaap_LetterOfCreditMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit).", "label": "Letter Of Credit [Member]", "terseLabel": "Commercial letters of credit" } } }, "localname": "LetterOfCreditMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LettersOfCreditOutstandingAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.", "label": "Letters of Credit Outstanding, Amount", "terseLabel": "Letters of credit outstanding" } } }, "localname": "LettersOfCreditOutstandingAmount", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails", "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r28" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "Liabilities", "totalLabel": "Total liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r18", "r298", "r312" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "Total liabilities and stockholders' equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Liabilities and Equity [Abstract]", "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r30" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "Current liabilities:" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesFairValueDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Liabilities, Fair Value Disclosure [Abstract]", "terseLabel": "Liabilities" } } }, "localname": "LiabilitiesFairValueDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCredit": { "auth_ref": [ "r11", "r296", "r305" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.", "label": "Line of Credit Facility, Amount Outstanding", "terseLabel": "Borrowings outstanding" } } }, "localname": "LineOfCredit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r26" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.", "label": "Line of Credit Facility, Maximum Borrowing Capacity", "terseLabel": "Maximum borrowing capacity" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": { "auth_ref": [ "r26" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).", "label": "Line of Credit Facility, Remaining Borrowing Capacity", "terseLabel": "Available borrowing capacity" } } }, "localname": "LineOfCreditFacilityRemainingBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LitigationSettlementAmountAwardedToOtherParty": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount awarded to other party in judgment or settlement of litigation.", "label": "Litigation Settlement, Amount", "terseLabel": "Expected remediation cost on settlement" } } }, "localname": "LitigationSettlementAmountAwardedToOtherParty", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LoansPayableMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Borrowing supported by a written promise to pay an obligation.", "label": "Loans Payable [Member]", "terseLabel": "Term Loan" } } }, "localname": "LoansPayableMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails", "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LongTermDebt": { "auth_ref": [ "r11", "r158", "r296", "r309" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetailsCal2": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.", "label": "Long-term Debt", "totalLabel": "Total debt, net" } } }, "localname": "LongTermDebt", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtCurrent": { "auth_ref": [ "r27" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails": { "order": 1.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 }, "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.", "label": "Long-term Debt, Current Maturities", "negatedLabel": "Less: current portion", "terseLabel": "Current portion of long-term debt" } } }, "localname": "LongTermDebtCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtNoncurrent": { "auth_ref": [ "r31" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails": { "order": 2.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 }, "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.", "label": "Long-term Debt, Excluding Current Maturities", "terseLabel": "Long-term debt, net of current portion" } } }, "localname": "LongTermDebtNoncurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongtermDebtTypeAxis": { "auth_ref": [ "r31" ], "lang": { "en-US": { "role": { "documentation": "Information by type of long-term debt.", "label": "Long-term Debt, Type [Axis]" } } }, "localname": "LongtermDebtTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails", "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LongtermDebtTypeDomain": { "auth_ref": [ "r31", "r156" ], "lang": { "en-US": { "role": { "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.", "label": "Longterm Debt Type [Domain]", "terseLabel": "Long-term Debt, Type [Domain]" } } }, "localname": "LongtermDebtTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails", "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LossContingenciesByNatureOfContingencyAxis": { "auth_ref": [ "r146", "r147", "r148", "r149", "r150", "r151", "r152", "r154", "r155" ], "lang": { "en-US": { "role": { "documentation": "Information by type of existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur.", "label": "Loss Contingency Nature [Axis]" } } }, "localname": "LossContingenciesByNatureOfContingencyAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingenciesLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Loss Contingencies [Line Items]", "terseLabel": "Commitments and contingencies" } } }, "localname": "LossContingenciesLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingenciesTable": { "auth_ref": [ "r146", "r147", "r148", "r149", "r150", "r151", "r152", "r154", "r155" ], "lang": { "en-US": { "role": { "documentation": "Discloses the specific components (such as the nature, name, and date) of the loss contingency and gives an estimate of the possible loss or range of loss, or states that a reasonable estimate cannot be made. Excludes environmental contingencies, warranties and unconditional purchase obligations.", "label": "Loss Contingencies [Table]" } } }, "localname": "LossContingenciesTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyNatureDomain": { "auth_ref": [ "r146", "r147", "r148", "r149", "r150", "r151", "r152", "r154", "r155" ], "lang": { "en-US": { "role": { "documentation": "An existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur. Resolution of the uncertainty may confirm the incurrence of a loss or impairment of an asset or the incurrence of a liability.", "label": "Loss Contingency Nature [Domain]", "terseLabel": "Loss Contingency, Nature [Domain]" } } }, "localname": "LossContingencyNatureDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MinorityInterest": { "auth_ref": [ "r36", "r297", "r311" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which is directly or indirectly attributable to that ownership interest in subsidiary equity which is not attributable to the parent (that is, noncontrolling interest, previously referred to as minority interest).", "label": "Stockholders' Equity Attributable to Noncontrolling Interest", "terseLabel": "Noncontrolling interest" } } }, "localname": "MinorityInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders": { "auth_ref": [ "r165" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Decrease in noncontrolling interest balance from payment of dividends or other distributions by the non-wholly owned subsidiary or partially owned entity, included in the consolidation of the parent entity, to the noncontrolling interest holders.", "label": "Noncontrolling Interest, Decrease from Distributions to Noncontrolling Interest Holders", "negatedLabel": "Distribution of noncontrolling entities" } } }, "localname": "MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_MinorityInterestDisclosureTextBlock": { "auth_ref": [ "r232" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for noncontrolling interest in consolidated subsidiaries, which could include the name of the subsidiary, the ownership percentage held by the parent, the ownership percentage held by the noncontrolling owners, the amount of the noncontrolling interest, the location of this amount on the balance sheet (when not reported separately), an explanation of the increase or decrease in the amount of the noncontrolling interest, the noncontrolling interest share of the net Income or Loss of the subsidiary, the location of this amount on the income statement (when not reported separately), the nature of the noncontrolling interest such as background information and terms, the amount of the noncontrolling interest represented by preferred stock, a description of the preferred stock, and the dividend requirements of the preferred stock.", "label": "Noncontrolling Interest Disclosure [Text Block]", "terseLabel": "Noncontrolling Interests" } } }, "localname": "MinorityInterestDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterests" ], "xbrltype": "textBlockItemType" }, "us-gaap_MinorityInterestLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Noncontrolling Interest [Line Items]", "terseLabel": "Noncontrolling Interests" } } }, "localname": "MinorityInterestLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_MinorityInterestOwnershipPercentageByParent": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The parent entity's interest in net assets of the subsidiary, expressed as a percentage.", "label": "Percentage of Ownership Interest", "terseLabel": "Ownership percentage", "verboseLabel": "Ownership interest (as a percent)" } } }, "localname": "MinorityInterestOwnershipPercentageByParent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNatureOfBusinessDetails", "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_MinorityInterestTable": { "auth_ref": [ "r36", "r61", "r218", "r224" ], "lang": { "en-US": { "role": { "documentation": "Schedule of noncontrolling interest disclosure which includes the name of the subsidiary, the ownership percentage held by the parent, the ownership percentage held by the noncontrolling owners, the amount of the noncontrolling interest, the location of this amount on the balance sheet (when not reported separately), an explanation of the increase or decrease in the amount of the noncontrolling interest, the noncontrolling interest share of the net Income or Loss of the subsidiary, the location of this amount on the income statement (when not reported separately), the nature of the noncontrolling interest such as background information and terms, the amount of the noncontrolling interest represented by preferred stock, a description of the preferred stock, and the dividend requirements of the preferred stock.", "label": "Noncontrolling Interest [Table]" } } }, "localname": "MinorityInterestTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_MortgagesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A loan to finance the purchase of real estate where the lender has a lien on the property as collateral for the loan.", "label": "Mortgages [Member]", "terseLabel": "Mortgages" } } }, "localname": "MortgagesMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NatureOfOperations": { "auth_ref": [ "r105", "r111" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.", "label": "Nature of Operations [Text Block]", "terseLabel": "Nature of Business" } } }, "localname": "NatureOfOperations", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNatureOfBusiness" ], "xbrltype": "textBlockItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r77" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities, Continuing Operations", "totalLabel": "Net cash (used in) provided by financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities, Continuing Operations [Abstract]", "terseLabel": "Cash flows from financing activities:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r77" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities, Continuing Operations", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities, Continuing Operations [Abstract]", "terseLabel": "Cash flows from investing activities:" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r77", "r79", "r82" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities, Continuing Operations", "totalLabel": "Net cash used in operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities, Continuing Operations [Abstract]", "terseLabel": "Cash flows from operating activities:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r49", "r51", "r58", "r82", "r103", "r301", "r316" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Available to Common Stockholders, Basic", "totalLabel": "Net (loss) income attributable to Primoris", "verboseLabel": "Net (loss) income attributable to Primoris" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Income (Loss) Attributable to Parent [Abstract]", "terseLabel": "Numerator:" } } }, "localname": "NetIncomeLossAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": { "auth_ref": [ "r49", "r51", "r221", "r230" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": -1.0 }, "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of Net Income (Loss) attributable to noncontrolling interest.", "label": "Net Income (Loss) Attributable to Noncontrolling Interest", "negatedLabel": "Less net income attributable to noncontrolling interests", "terseLabel": "Net income attributable to noncontrolling interests" } } }, "localname": "NetIncomeLossAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Recent Accounting Pronouncements" } } }, "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "auth_ref": [ "r94" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure of changes in accounting principles, including adoption of new accounting pronouncements, that describes the new methods, amount and effects on financial statement line items.", "label": "New Accounting Pronouncements and Changes in Accounting Principles [Text Block]", "terseLabel": "Recent Accounting Pronouncements" } } }, "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRecentAccountingPronouncements" ], "xbrltype": "textBlockItemType" }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Noncash Investing and Financing Items [Abstract]", "terseLabel": "SUPPLEMENTAL DISCLOSURES OF NONCASH INVESTING AND FINANCING ACTIVITIES" } } }, "localname": "NoncashInvestingAndFinancingItemsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r211" ], "lang": { "en-US": { "role": { "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.", "label": "Noncompete Agreements [Member]", "terseLabel": "Non-compete agreements" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NoncontrollingInterestAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Noncontrolling Interests" } } }, "localname": "NoncontrollingInterestAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_NoncontrollingInterestMember": { "auth_ref": [ "r217" ], "lang": { "en-US": { "role": { "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest.", "label": "Noncontrolling Interest [Member]", "terseLabel": "Non Controlling Interest" } } }, "localname": "NoncontrollingInterestMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Nonoperating Income (Expense) [Abstract]", "terseLabel": "Other income (expense):" } } }, "localname": "NonoperatingIncomeExpenseAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_NumberOfReportableSegments": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.", "label": "Number of Reportable Segments", "terseLabel": "Number of reportable segments" } } }, "localname": "NumberOfReportableSegments", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNatureOfBusinessDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails" ], "xbrltype": "integerItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "totalLabel": "Operating income" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r274", "r277" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.", "label": "Operating Lease, Cost", "terseLabel": "Operating lease expense" } } }, "localname": "OperatingLeaseCost", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Operating Lease Liabilities, Payments Due [Abstract]", "terseLabel": "Future minimum lease payments under non-cancelable operating leases" } } }, "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r271" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.", "label": "Operating Lease, Liability", "totalLabel": "Operating lease liabilities", "verboseLabel": "Total" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails", "http://www.primoriscorp.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r271" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 }, "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Operating Lease, Liability, Current", "terseLabel": "Accrued liabilities", "verboseLabel": "Current operating lease liability" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails", "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "auth_ref": [ "r272" ], "lang": { "en-US": { "role": { "documentation": "Indicates line item in statement of financial position that includes current operating lease liability.", "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]" } } }, "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "extensibleListItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r271" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 }, "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Noncurrent operating lease liabilities, net of current portion" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": { "auth_ref": [ "r272" ], "lang": { "en-US": { "role": { "documentation": "Indicates line item in statement of financial position that includes noncurrent operating lease liability.", "label": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]" } } }, "localname": "OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails" ], "xbrltype": "extensibleListItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r270" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating Lease, Right-of-Use Asset", "verboseLabel": "Operating lease assets" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Nature of Business" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "auth_ref": [ "r4", "r5", "r6", "r29" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.", "label": "Other Accrued Liabilities, Current", "terseLabel": "Other" } } }, "localname": "OtherAccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r23" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 7.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of noncurrent assets classified as other.", "label": "Other Assets, Noncurrent", "terseLabel": "Other long-term assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "auth_ref": [ "r43", "r264" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "terseLabel": "Foreign currency translation adjustments", "verboseLabel": "Foreign currency translation adjustments, net of tax" } } }, "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherIntangibleAssetsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Intangible assets classified as other.", "label": "Other Intangible Assets [Member]", "terseLabel": "Other" } } }, "localname": "OtherIntangibleAssetsMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r32" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.", "label": "Other Liabilities, Noncurrent", "terseLabel": "Other long-term liabilities" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNoncashExpense": { "auth_ref": [ "r82" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of expense or loss included in net income that result in no cash flow, classified as other.", "label": "Other Noncash Expense", "terseLabel": "Other non-cash items" } } }, "localname": "OtherNoncashExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNoncurrentLiabilitiesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Primary financial statement caption encompassing other noncurrent liabilities.", "label": "Other Noncurrent Liabilities [Member]", "terseLabel": "Other long-term liabilities" } } }, "localname": "OtherNoncurrentLiabilitiesMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsDerivativeContractAndInstrumentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r66" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 3.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.", "label": "Other Nonoperating Income (Expense)", "terseLabel": "Other income (expense), net" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_PartnersCapitalAccountDistributions": { "auth_ref": [ "r165", "r166" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Total distributions to each class of partners (i.e., general, limited and preferred partners).", "label": "Partners' Capital Account, Distributions", "terseLabel": "Distributions to partners" } } }, "localname": "PartnersCapitalAccountDistributions", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PayablesAndAccrualsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Accounts Payable and Accrued Liabilities" } } }, "localname": "PayablesAndAccrualsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "auth_ref": [ "r72" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow to reacquire common stock during the period.", "label": "Payments for Repurchase of Common Stock", "negatedLabel": "Repurchase of common stock" } } }, "localname": "PaymentsForRepurchaseOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsOfDividendsCommonStock": { "auth_ref": [ "r72" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.", "label": "Payments of Ordinary Dividends, Common Stock", "negatedLabel": "Dividends paid" } } }, "localname": "PaymentsOfDividendsCommonStock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r68" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchase of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r190", "r198" ], "lang": { "en-US": { "role": { "documentation": "Information by plan name for share-based payment arrangement.", "label": "Plan Name [Axis]" } } }, "localname": "PlanNameAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails", "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Plan name for share-based payment arrangement.", "label": "Plan Name [Domain]", "terseLabel": "Plan Name [Domain]" } } }, "localname": "PlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails", "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r2", "r20", "r21" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.", "label": "Prepaid Expense and Other Assets, Current", "terseLabel": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "auth_ref": [ "r69" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The cash inflow from the additional capital contribution to the entity.", "label": "Proceeds from Issuance of Common Stock", "terseLabel": "Proceeds from issuance of common stock purchased under a long-term incentive plan" } } }, "localname": "ProceedsFromIssuanceOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromIssuanceOfLongTermDebt": { "auth_ref": [ "r70" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.", "label": "Proceeds from Issuance of Long-term Debt", "terseLabel": "Proceeds from issuance of long-term debt" } } }, "localname": "ProceedsFromIssuanceOfLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromLinesOfCredit": { "auth_ref": [ "r70", "r89" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "Proceeds from Lines of Credit", "terseLabel": "Borrowings under revolving line of credit" } } }, "localname": "ProceedsFromLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromMinorityShareholders": { "auth_ref": [ "r71" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow from a noncontrolling interest. Includes, but is not limited to, purchase of additional shares or other increase in noncontrolling interest ownership.", "label": "Proceeds from Noncontrolling Interests", "terseLabel": "Capital contributions" } } }, "localname": "ProceedsFromMinorityShareholders", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromPaymentsForOtherFinancingActivities": { "auth_ref": [ "r71", "r74", "r91" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities classified as other.", "label": "Proceeds from (Payments for) Other Financing Activities", "terseLabel": "Other" } } }, "localname": "ProceedsFromPaymentsForOtherFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "auth_ref": [ "r67" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.", "label": "Proceeds from Sale of Property, Plant, and Equipment", "terseLabel": "Proceeds from sale of property and equipment" } } }, "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r49", "r51", "r76", "r116", "r119", "r219", "r220", "r222", "r230", "r231" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 }, "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.", "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "terseLabel": "Net (loss) income", "totalLabel": "Net (loss) income" } } }, "localname": "ProfitLoss", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfComprehensiveLossIncome", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r8", "r9", "r140", "r314" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Net", "terseLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReceivablesNetCurrent": { "auth_ref": [ "r15", "r19", "r313", "r326" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The total amount due to the entity within one year of the balance sheet date (or one operating cycle, if longer) from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such receivables to an amount that approximates their net realizable value.", "label": "Receivables, Net, Current", "terseLabel": "Accounts receivable, net", "verboseLabel": "Accounts receivable" } } }, "localname": "ReceivablesNetCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfLinesOfCredit": { "auth_ref": [ "r73", "r89" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "Repayments of Lines of Credit", "negatedLabel": "Payments on revolving line of credit" } } }, "localname": "RepaymentsOfLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfLongTermDebt": { "auth_ref": [ "r73" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.", "label": "Repayments of Long-term Debt", "negatedLabel": "Repayment of long-term debt" } } }, "localname": "RepaymentsOfLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedStockUnitsRSUMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.", "label": "Restricted Stock Units R S U [Member]", "terseLabel": "Restricted Stock Units" } } }, "localname": "RestrictedStockUnitsRSUMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareAntiDilutiveSharesDetails", "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails", "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r17", "r165", "r310" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings [Member]", "terseLabel": "Retained Earnings" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Revenue" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r176", "r177" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "terseLabel": "Revenue", "verboseLabel": "Revenue" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails", "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails", "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r183" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]", "verboseLabel": "Revenue" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenue" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r174" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.", "label": "Revenue, Remaining Performance Obligation", "terseLabel": "Remaining performance obligations" } } }, "localname": "RevenueRemainingPerformanceObligation", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "terseLabel": "Revenue expected timing" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligations2020Details" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r175" ], "lang": { "en-US": { "role": { "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period 1", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligations2020Details" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r175" ], "lang": { "en-US": { "role": { "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in CCYY-MM-DD format.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligations2020Details" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenuePerformanceObligations2020Details" ], "xbrltype": "stringItemType" }, "us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenues from External Customers and Long-Lived Assets [Line Items]", "terseLabel": "Revenues and total assets by geographic area" } } }, "localname": "RevenuesFromExternalCustomersAndLongLivedAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsRevenueAndTotalAssetsByGeographicAreaDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.", "label": "Revolving Credit Facility [Member]", "terseLabel": "Revolving Credit Facility" } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "auth_ref": [ "r275", "r277" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.", "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability", "verboseLabel": "Leased assets obtained in exchange for new operating leases" } } }, "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_SalesRevenueNetMember": { "auth_ref": [ "r108" ], "lang": { "en-US": { "role": { "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.", "label": "Sales Revenue Net [Member]", "terseLabel": "Revenues" } } }, "localname": "SalesRevenueNetMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureBasisOfPresentationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the components of accrued liabilities.", "label": "Schedule of Accrued Liabilities [Table Text Block]", "terseLabel": "Summary of accrued liabilities" } } }, "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "auth_ref": [ "r102" ], "lang": { "en-US": { "role": { "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities.", "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]" } } }, "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareAntiDilutiveSharesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": { "auth_ref": [ "r208", "r209" ], "lang": { "en-US": { "role": { "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.", "label": "Schedule of Business Acquisitions, by Acquisition [Table]" } } }, "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfDebtInstrumentsTextBlock": { "auth_ref": [ "r31", "r88", "r161", "r162", "r163", "r164", "r266", "r267", "r269", "r304" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer.", "label": "Schedule of Long-term Debt Instruments [Table Text Block]", "terseLabel": "Schedule of long-term debt and credit facilities" } } }, "localname": "ScheduleOfDebtInstrumentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDerivativeAssetsAtFairValueTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of derivative assets at fair value.", "label": "Schedule of Derivative Assets at Fair Value [Table Text Block]", "terseLabel": "Schedule of fair values of our derivative contracts included in the Condensed Consolidated Balance Sheets" } } }, "localname": "ScheduleOfDerivativeAssetsAtFairValueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": { "auth_ref": [ "r237", "r242", "r246" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.", "label": "Derivative Instruments, Gain (Loss) [Table Text Block]", "terseLabel": "Schedule of derivative instruments within the Condensed Consolidated Statements of Income" } } }, "localname": "ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDerivativeInstrumentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r103" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "terseLabel": "Schedule of computation of basic and diluted earnings per share" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": { "auth_ref": [ "r248", "r249" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).", "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]", "terseLabel": "Schedule of financial assets and liabilities which are required to be measured at fair value" } } }, "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureFairValueMeasurementsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r131", "r134" ], "lang": { "en-US": { "role": { "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Schedule of Finite-Lived Intangible Assets [Table]" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "auth_ref": [ "r131", "r134" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "terseLabel": "Summary of intangible asset categories, amounts and the average amortization periods" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfGoodwillTable": { "auth_ref": [ "r127", "r128" ], "lang": { "en-US": { "role": { "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons.", "label": "Schedule of Goodwill [Table]" } } }, "localname": "ScheduleOfGoodwillTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r127", "r128" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.", "label": "Schedule of Goodwill by Reporting Unit [Table Text Block]", "terseLabel": "Schedule of goodwill by reporting unit" } } }, "localname": "ScheduleOfGoodwillTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock": { "auth_ref": [ "r192" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the changes in outstanding nonvested restricted stock units.", "label": "Schedule of Nonvested Restricted Stock Units Activity [Table Text Block]", "terseLabel": "Schedule of units activity" } } }, "localname": "ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": { "auth_ref": [ "r54", "r56", "r120" ], "lang": { "en-US": { "role": { "documentation": "Schedule of material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries.", "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]" } } }, "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsRevenueAndTotalAssetsByGeographicAreaDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "auth_ref": [ "r112", "r116", "r117", "r118", "r127" ], "lang": { "en-US": { "role": { "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.", "label": "Schedule of Segment Reporting Information, by Segment [Table]" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "auth_ref": [ "r112", "r116", "r117", "r118", "r127" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "terseLabel": "Schedule of revenue and gross profit by segment" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r190", "r198" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about share-based payment arrangement.", "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]" } } }, "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "auth_ref": [ "r134" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.", "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "terseLabel": "Schedule of estimated future amortization expense for intangible assets" } } }, "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Segment [Domain]", "terseLabel": "Segments [Domain]" } } }, "localname": "SegmentDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentReportingAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Reportable Segments" } } }, "localname": "SegmentReportingAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r122" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.", "label": "Segment Reporting Disclosure [Text Block]", "terseLabel": "Reportable Segments" } } }, "localname": "SegmentReportingDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegments" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentReportingInformationLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Segment Reporting Information [Line Items]", "terseLabel": "Segment reporting information" } } }, "localname": "SegmentReportingInformationLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r63", "r124" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, General and Administrative Expense", "terseLabel": "Selling, general and administrative expenses" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r80" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "Share-based Compensation", "terseLabel": "Stock-based compensation expense" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r194" ], "lang": { "en-US": { "role": { "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period", "terseLabel": "Granted, Units", "verboseLabel": "Units granted" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails", "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "auth_ref": [ "r193" ], "lang": { "en-US": { "role": { "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number", "terseLabel": "Number of unvested units" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "terseLabel": "Stock-based compensation" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r187", "r191" ], "lang": { "en-US": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Share Based Compensation Arrangements By Share Based Payment Award Award Type And Plan Name [Domain]", "terseLabel": "Equity Award [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails", "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationAwardTrancheOneMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.", "label": "Share Based Compensation Award Tranche One [Member]", "terseLabel": "2020 (remaining nine months)" } } }, "localname": "ShareBasedCompensationAwardTrancheOneMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationAwardTrancheThreeMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Third portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.", "label": "Share Based Compensation Award Tranche Three [Member]", "terseLabel": "2022" } } }, "localname": "ShareBasedCompensationAwardTrancheThreeMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationAwardTrancheTwoMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Second portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.", "label": "Share Based Compensation Award Tranche Two [Member]", "terseLabel": "2021" } } }, "localname": "ShareBasedCompensationAwardTrancheTwoMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SharesIssued": { "auth_ref": [ "r160" ], "lang": { "en-US": { "role": { "documentation": "Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now held in the treasury.", "label": "Shares, Issued", "periodEndLabel": "Balance (in shares)", "periodStartLabel": "Balance (in shares)" } } }, "localname": "SharesIssued", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r0", "r116", "r127", "r142", "r143", "r144", "r319" ], "lang": { "en-US": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsGoodwillDetails", "http://www.primoriscorp.com/role/DisclosureReportableSegmentsDetails", "http://www.primoriscorp.com/role/DisclosureRevenueDisaggregationOfRevenueByCustomerTypeAndContractTypeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r34", "r160" ], "lang": { "en-US": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]", "terseLabel": "Statement" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "CONSOLIDATED BALANCE SHEETS" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE (LOSS) INCOME" } } }, "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureLeasesComponentsOfLeaseExpenseAndOperatingLeaseLiabilitiesDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": { "auth_ref": [ "r13", "r14", "r160", "r165" ], "lang": { "en-US": { "role": { "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan.", "label": "Stock Issued During Period, Shares, Employee Stock Purchase Plans", "terseLabel": "Shares of common stock issued under the long-term incentive plan" } } }, "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "auth_ref": [ "r13", "r14", "r160", "r165" ], "lang": { "en-US": { "role": { "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).", "label": "Stock Issued During Period, Shares, Share-based Compensation, Net of Forfeitures", "terseLabel": "Shares of common stock issued as a part of quarterly compensation of non-employee members of the Board of Directors", "verboseLabel": "Issuance of shares to employees and/or directors (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": { "auth_ref": [ "r13", "r14", "r160", "r165" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan.", "label": "Stock Issued During Period, Value, Employee Stock Purchase Plan", "terseLabel": "Amount received in exchange for shares of common stock under a long term incentive plan" } } }, "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "auth_ref": [ "r13", "r14", "r165", "r189", "r195" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Stock Issued During Period, Value Issued to Employees and Directors", "terseLabel": "Issuance of shares to employees and/or directors" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockRepurchaseProgramAuthorizedAmount1": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of stock repurchase plan authorized.", "label": "Stock Repurchase Program, Authorized Amount", "terseLabel": "Aggregate purchase price up to which shares can be acquired under share repurchase program" } } }, "localname": "StockRepurchaseProgramAuthorizedAmount1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": { "auth_ref": [ "r13", "r14", "r160", "r165" ], "lang": { "en-US": { "role": { "documentation": "Number of shares that have been repurchased and retired during the period.", "label": "Stock Repurchased and Retired During Period, Shares", "terseLabel": "Number of shares purchased under share repurchase program" } } }, "localname": "StockRepurchasedAndRetiredDuringPeriodShares", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": { "auth_ref": [ "r13", "r14", "r160", "r165" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital).", "label": "Stock Repurchased and Retired During Period, Value", "terseLabel": "Amount paid for shares purchased under share repurchase program" } } }, "localname": "StockRepurchasedAndRetiredDuringPeriodValue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockRepurchasedDuringPeriodShares": { "auth_ref": [ "r13", "r14", "r160", "r165" ], "lang": { "en-US": { "role": { "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.", "label": "Stock Repurchased During Period, Shares", "negatedLabel": "Repurchase of stock (in shares)" } } }, "localname": "StockRepurchasedDuringPeriodShares", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockRepurchasedDuringPeriodValue": { "auth_ref": [ "r13", "r14", "r160", "r165" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.", "label": "Stock Repurchased During Period, Value", "negatedLabel": "Repurchase of stock" } } }, "localname": "StockRepurchasedDuringPeriodValue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r217", "r218", "r229" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.", "label": "Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest", "periodEndLabel": "Balance", "periodStartLabel": "Balance", "totalLabel": "Total stockholders' equity" } } }, "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest [Abstract]", "terseLabel": "Stockholders' equity" } } }, "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheets", "http://www.primoriscorp.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Stockholders' Equity" } } }, "localname": "StockholdersEquityNoteAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "auth_ref": [ "r168" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.", "label": "Stockholders' Equity Note Disclosure [Text Block]", "terseLabel": "Stockholders' Equity" } } }, "localname": "StockholdersEquityNoteDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquity" ], "xbrltype": "textBlockItemType" }, "us-gaap_SubsequentEventLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.", "label": "Subsequent Event [Line Items]", "terseLabel": "Subsequent Events" } } }, "localname": "SubsequentEventLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event [Member]", "terseLabel": "Subsequent Events" } } }, "localname": "SubsequentEventMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventTable": { "auth_ref": [ "r283" ], "lang": { "en-US": { "role": { "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued.", "label": "Subsequent Event [Table]" } } }, "localname": "SubsequentEventTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeAxis": { "auth_ref": [ "r283" ], "lang": { "en-US": { "role": { "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event Type [Axis]" } } }, "localname": "SubsequentEventTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeDomain": { "auth_ref": [ "r283" ], "lang": { "en-US": { "role": { "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event Type [Domain]", "terseLabel": "Subsequent Event Type [Domain]" } } }, "localname": "SubsequentEventTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Subsequent Events." } } }, "localname": "SubsequentEventsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventsTextBlock": { "auth_ref": [ "r284" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.", "label": "Subsequent Events [Text Block]", "terseLabel": "Subsequent Events" } } }, "localname": "SubsequentEventsTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureSubsequentEvent" ], "xbrltype": "textBlockItemType" }, "us-gaap_SupplementalCashFlowInformationAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "SUPPLEMENTAL DISCLOSURES OF CASH FLOW INFORMATION" } } }, "localname": "SupplementalCashFlowInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_SuretyBondMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "An obligation arising from a three-party agreement that legally binds together a principal who needs the bond, an obligee who requires the bond and a surety company that sells the bond.", "label": "Surety Bond [Member]", "terseLabel": "Bonding" } } }, "localname": "SuretyBondMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCommitmentsAndContingenciesLegalDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TaxesPayableCurrent": { "auth_ref": [ "r27" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Taxes Payable, Current", "terseLabel": "Corporate income taxes and other taxes" } } }, "localname": "TaxesPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureAccountsPayableAndAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_TradeNamesMember": { "auth_ref": [ "r210" ], "lang": { "en-US": { "role": { "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.", "label": "Trade Names [Member]", "terseLabel": "Tradename" } } }, "localname": "TradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockAcquiredAverageCostPerShare": { "auth_ref": [ "r167" ], "lang": { "en-US": { "role": { "documentation": "Total cost of shares repurchased divided by the total number of shares repurchased.", "label": "Treasury Stock Acquired, Average Cost Per Share", "terseLabel": "Amount paid for shares purchased and cancelled under share repurchase program (per share)" } } }, "localname": "TreasuryStockAcquiredAverageCostPerShare", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_TreasuryStockSharesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Treasury Stock, Shares [Abstract]", "terseLabel": "Share repurchase plan" } } }, "localname": "TreasuryStockSharesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockholdersEquityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_UnamortizedDebtIssuanceExpense": { "auth_ref": [ "r23" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetailsCal2": { "order": 2.0, "parentTag": "us-gaap_LongTermDebt", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The remaining balance of debt issuance expenses that were capitalized and are being amortized against income over the lives of the respective bond issues. This does not include the amounts capitalized as part of the cost of the utility plant or asset.", "label": "Unamortized Debt Issuance Expense", "negatedLabel": "Unamortized debt issuance costs" } } }, "localname": "UnamortizedDebtIssuanceExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureCreditArrangementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnbilledReceivablesCurrent": { "auth_ref": [], "calculation": { "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails": { "order": 3.0, "parentTag": "us-gaap_ContractWithCustomerAssetNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.", "label": "Unbilled Receivables, Current", "terseLabel": "Unbilled revenue" } } }, "localname": "UnbilledReceivablesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureRevenueContractAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnrealizedGainLossOnDerivatives": { "auth_ref": [ "r81" ], "calculation": { "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The net change in the difference between the fair value and the carrying value, or in the comparative fair values, of derivative instruments, including options, swaps, futures, and forward contracts, held at each balance sheet date, that was included in earnings for the period.", "label": "Unrealized Gain (Loss) on Derivatives", "negatedLabel": "Unrealized loss on interest rate swap" } } }, "localname": "UnrealizedGainLossOnDerivatives", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_VariableInterestEntitiesByClassificationOfEntityAxis": { "auth_ref": [ "r225", "r226", "r228" ], "lang": { "en-US": { "role": { "documentation": "Information by category of Variable Interest Entity (VIE).", "label": "Variable Interest Entities [Axis]" } } }, "localname": "VariableInterestEntitiesByClassificationOfEntityAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureNoncontrollingInterestsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VestingAxis": { "auth_ref": [ "r198" ], "lang": { "en-US": { "role": { "documentation": "Information by vesting schedule of award under share-based payment arrangement.", "label": "Vesting [Axis]" } } }, "localname": "VestingAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VestingDomain": { "auth_ref": [ "r198" ], "lang": { "en-US": { "role": { "documentation": "Vesting schedule of award under share-based payment arrangement.", "label": "Vesting [Domain]", "terseLabel": "Vesting [Domain]" } } }, "localname": "VestingDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureStockBasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r96", "r101" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "lang": { "en-US": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "Weighted Average Number of Shares Outstanding, Diluted", "terseLabel": "Diluted (in shares)", "totalLabel": "Weighted average shares for computation of diluted (loss) earnings per share" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]", "terseLabel": "Weighted average common shares outstanding:", "verboseLabel": "Denominator:" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r95", "r101" ], "calculation": { "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-US": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Basic (in shares)", "verboseLabel": "Weighted average shares for computation of basic earnings per share" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.primoriscorp.com/role/DisclosureDividendsAndEarningsPerShareDetails", "http://www.primoriscorp.com/role/StatementConsolidatedStatementsOfIncome" ], "xbrltype": "sharesItemType" } }, "unitCount": 9 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1337-109256" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=117327953&loc=d3e4984-109258" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592" }, "r111": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "275", "URI": "http://asc.fasb.org/topic&trid=2134479" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8721-108599" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8813-108599" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8906-108599" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8933-108599" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(24))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9038-108599" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9054-108599" }, "r122": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "http://asc.fasb.org/topic&trid=2134510" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4647-111522" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "30", "SubTopic": "10", "Topic": "330", "URI": "http://asc.fasb.org/extlink&oid=68048583&loc=d3e3636-108311" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=77989000&loc=SL49117168-202975" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13854-109267" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "((a)(1),(b))", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(2)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r139": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "350", "URI": "http://asc.fasb.org/topic&trid=2144416" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "420", "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.P.4(d))", "Topic": "420", "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747" }, "r145": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "http://asc.fasb.org/topic&trid=2144648" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14326-108349" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14615-108349" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14394-108349" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14435-108349" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14453-108349" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14472-108349" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14557-108349" }, "r153": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "http://asc.fasb.org/topic&trid=2127136" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=118943654&loc=d3e12021-110248" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=118943654&loc=d3e12053-110248" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=6802200&loc=SL6230698-112601" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6031897-161870" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6031897-161870" }, "r159": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "http://asc.fasb.org/topic&trid=2208564" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21463-112644" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21475-112644" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21506-112644" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21521-112644" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21538-112644" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.F)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=27012166&loc=d3e187171-122770" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655" }, "r168": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "505", "URI": "http://asc.fasb.org/topic&trid=2208762" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130531-203044" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130532-203044" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130533-203044" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130551-203045" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "12A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL108322424-203045" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130556-203045" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130556-203045" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046" }, "r183": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "http://asc.fasb.org/topic&trid=49130388" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118257860&loc=d3e4179-114921" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a),(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)-(ii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.F)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(7))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r200": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "http://asc.fasb.org/topic&trid=2228938" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e31931-109318" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32687-109319" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32698-109319" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=109238882&loc=d3e38679-109324" }, "r207": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "http://asc.fasb.org/topic&trid=2144680" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(8))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5263-128473" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5263-128473" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5333-128473" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "25", "SubTopic": "30", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=6911189&loc=d3e6411-128476" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=116859824&loc=d3e6819-128478" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)(1)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e7008-128479" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4568447-111683" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4568740-111683" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569616-111683" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.1)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=118582676&loc=d3e5710-111685" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=118582676&loc=d3e5728-111685" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "5A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=118582676&loc=SL6759159-111685" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=118582676&loc=d3e5747-111685" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "4I", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116874947&loc=SL4590271-111686" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.17)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116874947&loc=SL4591551-111686" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116874947&loc=SL4591552-111686" }, "r232": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "http://asc.fasb.org/topic&trid=2197479" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5579245-113959" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5579245-113959" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5580258-113959" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5618551-113959" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5618551-113959" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5618551-113959" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a),(c)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624163-113959" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624163-113959" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624163-113959" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "4C", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624171-113959" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624177-113959" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624177-113959" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624177-113959" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "4E", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624181-113959" }, "r247": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "815", "URI": "http://asc.fasb.org/topic&trid=2229140" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a),20,24)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(1)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(2)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19279-110258" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=SL6742756-110258" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13433-108611" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13531-108611" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13537-108611" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13537-108611" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=109240200&loc=d3e30690-110894" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=109240200&loc=d3e30700-110894" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=6450222&loc=d3e30840-110895" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=98513438&loc=d3e33268-110906" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b,c)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28541-108399" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28551-108399" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28555-108399" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19,20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918631-209977" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918673-209980" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(2)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888399&loc=SL77918982-209971" }, "r278": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/subtopic&trid=77888251" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39622-107864" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=6918054&loc=d3e56071-112765" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662" }, "r284": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "855", "URI": "http://asc.fasb.org/topic&trid=2122774" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=SL51823488-111719" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(a)", "Topic": "910", "URI": "http://asc.fasb.org/extlink&oid=118388040&loc=d3e49370-109356" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "http://asc.fasb.org/extlink&oid=68072869&loc=d3e41242-110953" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(3))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(15)(5))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(22))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6801-107765" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(23))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.9)", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "470", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=75038535&loc=d3e64711-112823" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(16))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(3))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(15)(5))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(24))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(5))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.(a),19)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(19))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=99380617&loc=SL75241803-196195" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "http://asc.fasb.org/extlink&oid=118262064&loc=SL116631418-115840" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "http://asc.fasb.org/extlink&oid=118262064&loc=SL116631419-115840" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-06(3)(a)(3))", "Topic": "946", "URI": "http://asc.fasb.org/extlink&oid=6488278&loc=d3e604059-122996" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-06(3))", "Topic": "946", "URI": "http://asc.fasb.org/extlink&oid=6488278&loc=d3e604059-122996" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "http://asc.fasb.org/extlink&oid=6589523&loc=d3e617274-123014" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=6590653&loc=d3e638233-123024" }, "r329": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r330": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r331": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-13" }, "r332": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1-" }, "r333": { "Name": "Regulation 12B", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r334": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3(c)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.31)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(a),(d))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.9)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6911-107765" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226008-175313" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226000-175313" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e637-108580" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e681-108580" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669686-108580" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "17B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL34724394-108580" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6935-107765" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669625-108580" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669625-108580" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e557-108580" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-03(e))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868656-224227" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(210.5-03(11))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(1))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(21))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e7018-107765" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.19)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.7(a),(b))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.8)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3179-108585" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(11))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3367-108585" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3000-108585" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3521-108585" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3044-108585" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4297-108586" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=SL98516268-108586" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(k)(1))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08.(e),(f))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08.(f))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08.(h)(2))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e24072-122690" }, "r92": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "http://asc.fasb.org/topic&trid=2122369" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794" }, "r94": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "250", "URI": "http://asc.fasb.org/topic&trid=2122394" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1448-109256" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1505-109256" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1252-109256" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "28A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1500-109256" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=SL5780133-109256" } }, "version": "2.1" } XML 75 R27.htm IDEA: XBRL DOCUMENT v3.20.1
Fair Value Measurements (Tables)
3 Months Ended
Mar. 31, 2020
Fair Value Measurements  
Schedule of financial assets and liabilities which are required to be measured at fair value

The following table presents, for each of the fair value hierarchy levels identified under ASC Topic 820, our financial assets and liabilities that are required to be measured at fair value at March 31, 2020 and December 31, 2019 (in thousands):

Fair Value Measurements at Reporting Date

 

    

    

Significant

    

 

Quoted Prices

Other

Significant

 

in Active Markets

Observable

Unobservable

 

for Identical Assets

Inputs

Inputs

 

    

(Level 1)

    

(Level 2)

    

(Level 3)

 

Assets as of March 31, 2020:

Cash and cash equivalents

$

93,474

 

$

 

$

Contingent consideration

938

Liabilities as of March 31, 2020:

Interest rate swap

$

$

11,414

$

Assets as of December 31, 2019:

Cash and cash equivalents

$

120,286

 

$

 

$

Contingent consideration

938

Liabilities as of December 31, 2019:

Interest rate swap

$

$

6,443

$

XML 76 R23.htm IDEA: XBRL DOCUMENT v3.20.1
Leases
3 Months Ended
Mar. 31, 2020
Leases  
Leases

Note 15—Leases

We lease administrative and various operational facilities, which are generally longer-term, project specific facilities or yards, and construction equipment under non-cancelable operating leases. We determine if an arrangement is a lease at inception. We have lease agreements with lease and non-lease components, which are generally accounted for separately. Operating leases are included in operating lease assets, accrued liabilities, and noncurrent operating lease liabilities on our Condensed Consolidated Balance Sheets.

Operating lease assets and operating lease liabilities are recognized at commencement date based on the present value of the future minimum lease payments over the lease term. In determining our lease term, we include options to extend or terminate the lease when it is reasonably certain that we will exercise that option. As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at commencement date to determine the present value of future payments. Lease expense from minimum lease payments is recognized on a straight-line basis over the lease term.

Our leases have remaining lease terms that expire at various dates through 2030, some of which may include options to extend the leases for up to 5 years. The exercise of lease extensions is at our sole discretion. Periodically, we sublease excess facility space, but any sublease income is generally not significant. Our lease agreements do not contain any material residual value guarantees or material restrictive covenants.

The components of lease expense are as follows (in thousands):

Three Months Ended March 31, 

    

2020

    

2019

Operating lease expense

$

22,978

(1)

$

16,513

(1)

________________________________________

(1)Includes short-term leases which are immaterial.

Our operating lease liabilities are reported on the Condensed Consolidated Balance Sheets as follows (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Accrued liabilities

$

79,532

$

74,036

Noncurrent operating lease liabilities, net of current portion

 

176,546

 

171,225

$

256,078

$

245,261

XML 77 R15.htm IDEA: XBRL DOCUMENT v3.20.1
Accounts Payable and Accrued Liabilities
3 Months Ended
Mar. 31, 2020
Accounts Payable and Accrued Liabilities  
Accounts Payable and Accrued Liabilities

Note 7—Accounts Payable and Accrued Liabilities

At March 31, 2020 and December 31, 2019, accounts payable included retention amounts of approximately $10.9 million and $11.3 million, respectively.  These amounts owed to subcontractors have been retained pending contract completion and customer acceptance of jobs.

The following is a summary of accrued liabilities (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Payroll and related employee benefits

$

74,008

$

64,705

Current operating lease liability

79,532

74,036

Casualty insurance reserves

 

9,902

 

9,918

Corporate income taxes and other taxes

 

6,822

 

9,027

Other

 

22,384

 

25,815

$

192,648

$

183,501

XML 78 R11.htm IDEA: XBRL DOCUMENT v3.20.1
Recent Accounting Pronouncements
3 Months Ended
Mar. 31, 2020
Recent Accounting Pronouncements  
Recent Accounting Pronouncements

Note 3—Recent Accounting Pronouncements

Recently adopted accounting pronouncements

In June 2016, the FASB issued ASU 2016-13, “Financial Instruments—Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments”, which introduced an expected credit loss methodology for the measurement and recognition of credit losses on most financial assets, including trade accounts receivables. The expected credit loss methodology under ASU 2016-13 is based on historical experience, current conditions and reasonable and supportable forecasts, and replaces the probable/incurred loss model for measuring and recognizing expected losses under current GAAP. The ASU also requires disclosure of information regarding how a company developed its allowance, including changes in the factors that influenced management’s estimate of expected credit losses and the reasons for those changes. The ASU and its related clarifying updates are effective for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted. We adopted the new standard on January 1, 2020, and it did not have a material impact on our estimate of the allowance for uncollectable accounts.

In August 2018, the FASB issued ASU 2018-13, “Fair Value Measurement (Topic 820): Disclosure Framework—Changes to the Disclosure Requirements for Fair Value Measurement”, which eliminates certain disclosure requirements for recurring and nonrecurring fair value measurements. The ASU eliminates such disclosures as the amount of and reasons for transfers between Level 1 and Level 2 of the fair value hierarchy, and adds new disclosure requirements for Level 3 measurements. This ASU is effective for fiscal years beginning after December 15, 2019, and interim periods within those fiscal years, with early adoption permitted for any eliminated or modified disclosures. We adopted the new standard on January 1, 2020, and it did not have a material impact on our disclosures.

Recently issued accounting pronouncements not yet adopted

In December 2019, the FASB issued ASU No. 2019-12, “Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes”, which removes certain exceptions to the general principles in Topic 740 and also clarifies and amends existing guidance to improve consistent application. This ASU is effective for fiscal years beginning after December 15, 2020, and interim periods within those fiscal years. Depending on the amendment, adoption may be applied on the retrospective, modified retrospective, or prospective basis. We are currently evaluating the potential effects of adopting the provisions of ASU No. 2019-12.

XML 79 R19.htm IDEA: XBRL DOCUMENT v3.20.1
Stock-Based Compensation
3 Months Ended
Mar. 31, 2020
Stock-Based Compensation  
Stock-Based Compensation

Note 11—Stock-Based Compensation

In May 2013, the shareholders approved and we adopted the Primoris Services Corporation 2013 Long-term Incentive Equity Plan (“Equity Plan”). Our Board of Directors has granted 607,361 Restricted Stock Units (“Units”), net of forfeitures, to employees under the Equity Plan. The grants were documented in RSU Award Agreements, which provide for a vesting schedule and require continuing employment of the employee. The Units are subject to earlier acceleration, termination, cancellation or forfeiture as provided in the underlying RSU Award Agreement.

At March 31, 2020, a total of 260,630 Units were vested. The vesting schedule for the remaining Units are as follows:

Number of Units

For the Years Ending December 31, 

    

to Vest

2020 (remaining nine months)

23,896

2021

179,364

2022

84,415

2023

59,056

346,731

Under guidance of ASC Topic 718 “Compensation — Stock Compensation”, stock-based compensation cost is measured at the date of grant, based on the calculated fair value of the stock-based award, and is recognized as expense over the employee’s requisite service period (generally the vesting period of the award).

The fair value of the Units was based on the closing market price of our common stock on the day prior to the date of the grant. Stock compensation expense for the Units is being amortized using the straight-line method over the service period. We recognized $0.5 million in compensation expense for each of the three months ended March 31, 2020 and 2019, respectively. At March 31, 2020, approximately $5.4 million of unrecognized compensation expense remained for the Units, which will be recognized over a weighted average period of 2.4 years.

Vested Units accrue “Dividend Equivalent Units” (as defined in the Equity Plan), which will be accrued as additional Units until the Units are converted to Common Stock.  At March 31, 2020, a total of 2,401 Dividend Equivalent Units were accrued.

XML 80 R32.htm IDEA: XBRL DOCUMENT v3.20.1
Derivative Instruments (Tables)
3 Months Ended
Mar. 31, 2020
Derivative Instruments  
Schedule of fair values of our derivative contracts included in the Condensed Consolidated Balance Sheets

The following table summarizes the fair value of our derivative contracts included in the Condensed Consolidated Balance Sheets (in thousands):

    

    

    

March 31, 

    

December 31, 

 

Balance Sheet Location

2020

2019

 

Interest rate swap

Other long-term liabilities

11,414

6,443

Total derivatives

$

11,414

$

6,443

Schedule of derivative instruments within the Condensed Consolidated Statements of Income

Three Months Ended

Location of Loss Recognized

March 31, 

    

on Derivatives

2020

    

2019

 

Interest rate swap

 

Interest expense

$

5,435

$

1,596

XML 81 R36.htm IDEA: XBRL DOCUMENT v3.20.1
Leases (Tables)
3 Months Ended
Mar. 31, 2020
Leases  
Summary of components of lease expense

The components of lease expense are as follows (in thousands):

Three Months Ended March 31, 

    

2020

    

2019

Operating lease expense

$

22,978

(1)

$

16,513

(1)

________________________________________

(1)Includes short-term leases which are immaterial.
Summary of operating lease liabilities

Our operating lease liabilities are reported on the Condensed Consolidated Balance Sheets as follows (in thousands):

March 31, 

December 31, 

    

2020

    

2019

Accrued liabilities

$

79,532

$

74,036

Noncurrent operating lease liabilities, net of current portion

 

176,546

 

171,225

$

256,078

$

245,261

XML 82 R57.htm IDEA: XBRL DOCUMENT v3.20.1
Dividends and Earnings Per Share - Anti-dilutive shares (Details)
3 Months Ended
Mar. 31, 2020
shares
Equity Plan  
Anti-dilutive shares  
Anti-dilutive shares 9
Restricted Stock Units  
Anti-dilutive shares  
Anti-dilutive shares 300
XML 83 R53.htm IDEA: XBRL DOCUMENT v3.20.1
Noncontrolling Interests (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Dec. 31, 2019
Noncontrolling Interests      
Revenue $ 743,243 $ 661,558  
Net income attributable to noncontrolling interests 3 989  
Cash 93,474   $ 120,286
Accounts receivable 416,412   404,911
Contract assets 359,370   344,806
Accounts payable 258,962   235,972
Contract liabilities $ 176,847   192,397
Carlsbad      
Noncontrolling Interests      
Ownership interest (as a percent) 50.00%    
Carlsbad      
Noncontrolling Interests      
Revenue   4,024  
Net income attributable to noncontrolling interests $ 3 989  
Distributions to partners 0 0  
Capital contributions 0 $ 0  
Cash 2,026   2,124
Due from Primoris 476    
Accounts payable     38
Contract liabilities $ 434   $ 425