0001558370-22-016314.txt : 20221104 0001558370-22-016314.hdr.sgml : 20221104 20221103192243 ACCESSION NUMBER: 0001558370-22-016314 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 91 CONFORMED PERIOD OF REPORT: 20220930 FILED AS OF DATE: 20221104 DATE AS OF CHANGE: 20221103 FILER: COMPANY DATA: COMPANY CONFORMED NAME: Willdan Group, Inc. CENTRAL INDEX KEY: 0001370450 STANDARD INDUSTRIAL CLASSIFICATION: SERVICES-ENGINEERING SERVICES [8711] IRS NUMBER: 141951112 STATE OF INCORPORATION: DE FISCAL YEAR END: 1230 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-33076 FILM NUMBER: 221359761 BUSINESS ADDRESS: STREET 1: 2401 EAST KATELLA AVENUE, SUITE 300 CITY: ANAHEIM STATE: CA ZIP: 92806 BUSINESS PHONE: 800-424-9144 MAIL ADDRESS: STREET 1: 2401 EAST KATELLA AVENUE, SUITE 300 CITY: ANAHEIM STATE: CA ZIP: 92806 10-Q 1 wldn-20220930x10q.htm 10-Q
081524000167730000001370450--12-302022Q3false76000840000802300075270000http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortizationhttp://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization00P1Yhttp://fasb.org/us-gaap/2022#QualifiedPlanMember128040001329700030000000.00150.0040001370450wldn:Covid19Member2022-11-022022-11-020001370450wldn:Covid19Member2021-01-012021-12-310001370450wldn:Covid19Member2020-01-012020-12-310001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2021-04-302021-04-300001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2021-04-292021-04-290001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2019-06-262019-06-260001370450us-gaap:RevolvingCreditFacilityMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-11-010001370450srt:MaximumMember2022-01-012022-09-300001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-11-010001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2022-08-020001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2022-09-300001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2021-04-300001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2019-06-260001370450wldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-11-012022-11-010001370450wldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMemberus-gaap:BaseRateMember2022-11-012022-11-010001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-03-082022-03-080001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:BaseRateMember2022-03-082022-03-080001370450srt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-01-012022-12-300001370450srt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:BaseRateMember2022-01-012022-12-300001370450us-gaap:CostOfSalesMember2022-01-012022-09-300001370450us-gaap:NewJerseyDivisionOfTaxationMember2021-01-022021-12-310001370450us-gaap:CaliforniaFranchiseTaxBoardMember2017-12-302018-12-280001370450us-gaap:CommonStockMember2022-07-022022-09-300001370450us-gaap:CommonStockMember2021-07-032021-10-010001370450us-gaap:CommonStockMember2021-01-022021-04-020001370450us-gaap:RetainedEarningsMember2022-09-300001370450us-gaap:AdditionalPaidInCapitalMember2022-09-300001370450us-gaap:RetainedEarningsMember2022-07-010001370450us-gaap:AdditionalPaidInCapitalMember2022-07-0100013704502022-07-010001370450us-gaap:RetainedEarningsMember2022-04-010001370450us-gaap:AdditionalPaidInCapitalMember2022-04-0100013704502022-04-010001370450us-gaap:RetainedEarningsMember2021-12-310001370450us-gaap:AdditionalPaidInCapitalMember2021-12-310001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-12-310001370450us-gaap:RetainedEarningsMember2021-10-010001370450us-gaap:AdditionalPaidInCapitalMember2021-10-010001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-10-010001370450us-gaap:RetainedEarningsMember2021-07-020001370450us-gaap:AdditionalPaidInCapitalMember2021-07-020001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-07-0200013704502021-07-020001370450us-gaap:RetainedEarningsMember2021-04-020001370450us-gaap:AdditionalPaidInCapitalMember2021-04-020001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-04-0200013704502021-04-020001370450us-gaap:RetainedEarningsMember2021-01-010001370450us-gaap:AdditionalPaidInCapitalMember2021-01-010001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-010001370450us-gaap:CommonStockMember2022-04-022022-07-010001370450us-gaap:CommonStockMember2022-01-012022-04-010001370450wldn:UnitBasedContractMemberwldn:EngineeringConsultingServicesMember2022-07-022022-09-300001370450wldn:UnitBasedContractMemberwldn:EnergyMember2022-07-022022-09-300001370450wldn:PublicUtilityMemberwldn:EngineeringConsultingServicesMember2022-07-022022-09-300001370450wldn:PublicUtilityMemberwldn:EnergyMember2022-07-022022-09-300001370450wldn:GovernmentsMemberwldn:EngineeringConsultingServicesMember2022-07-022022-09-300001370450wldn:GovernmentsMemberwldn:EnergyMember2022-07-022022-09-300001370450wldn:CommercialMemberwldn:EngineeringConsultingServicesMember2022-07-022022-09-300001370450wldn:CommercialMemberwldn:EnergyMember2022-07-022022-09-300001370450us-gaap:TimeAndMaterialsContractMemberwldn:EngineeringConsultingServicesMember2022-07-022022-09-300001370450us-gaap:TimeAndMaterialsContractMemberwldn:EnergyMember2022-07-022022-09-300001370450us-gaap:FixedPriceContractMemberwldn:EngineeringConsultingServicesMember2022-07-022022-09-300001370450us-gaap:FixedPriceContractMemberwldn:EnergyMember2022-07-022022-09-300001370450wldn:UnitBasedContractMember2022-07-022022-09-300001370450wldn:PublicUtilityMember2022-07-022022-09-300001370450wldn:GovernmentsMember2022-07-022022-09-300001370450wldn:CommercialMember2022-07-022022-09-300001370450us-gaap:TimeAndMaterialsContractMember2022-07-022022-09-300001370450us-gaap:IntersegmentEliminationMember2022-07-022022-09-300001370450us-gaap:FixedPriceContractMember2022-07-022022-09-300001370450wldn:UnitBasedContractMemberwldn:EngineeringConsultingServicesMember2022-01-012022-09-300001370450wldn:UnitBasedContractMemberwldn:EnergyMember2022-01-012022-09-300001370450wldn:PublicUtilityMemberwldn:EngineeringConsultingServicesMember2022-01-012022-09-300001370450wldn:PublicUtilityMemberwldn:EnergyMember2022-01-012022-09-300001370450wldn:GovernmentsMemberwldn:EngineeringConsultingServicesMember2022-01-012022-09-300001370450wldn:GovernmentsMemberwldn:EnergyMember2022-01-012022-09-300001370450wldn:CommercialMemberwldn:EngineeringConsultingServicesMember2022-01-012022-09-300001370450wldn:CommercialMemberwldn:EnergyMember2022-01-012022-09-300001370450us-gaap:TimeAndMaterialsContractMemberwldn:EngineeringConsultingServicesMember2022-01-012022-09-300001370450us-gaap:TimeAndMaterialsContractMemberwldn:EnergyMember2022-01-012022-09-300001370450us-gaap:FixedPriceContractMemberwldn:EngineeringConsultingServicesMember2022-01-012022-09-300001370450us-gaap:FixedPriceContractMemberwldn:EnergyMember2022-01-012022-09-300001370450country:USwldn:EngineeringConsultingServicesMember2022-01-012022-09-300001370450country:USwldn:EnergyMember2022-01-012022-09-300001370450wldn:UnitBasedContractMember2022-01-012022-09-300001370450wldn:PublicUtilityMember2022-01-012022-09-300001370450wldn:GovernmentsMember2022-01-012022-09-300001370450wldn:CommercialMember2022-01-012022-09-300001370450us-gaap:TimeAndMaterialsContractMember2022-01-012022-09-300001370450us-gaap:IntersegmentEliminationMember2022-01-012022-09-300001370450us-gaap:FixedPriceContractMember2022-01-012022-09-300001370450country:US2022-01-012022-09-300001370450wldn:UnitBasedContractMemberwldn:EngineeringConsultingServicesMember2021-07-032021-10-010001370450wldn:UnitBasedContractMemberwldn:EnergyMember2021-07-032021-10-010001370450wldn:PublicUtilityMemberwldn:EngineeringConsultingServicesMember2021-07-032021-10-010001370450wldn:PublicUtilityMemberwldn:EnergyMember2021-07-032021-10-010001370450wldn:GovernmentsMemberwldn:EngineeringConsultingServicesMember2021-07-032021-10-010001370450wldn:GovernmentsMemberwldn:EnergyMember2021-07-032021-10-010001370450wldn:CommercialMemberwldn:EngineeringConsultingServicesMember2021-07-032021-10-010001370450wldn:CommercialMemberwldn:EnergyMember2021-07-032021-10-010001370450us-gaap:TimeAndMaterialsContractMemberwldn:EngineeringConsultingServicesMember2021-07-032021-10-010001370450us-gaap:TimeAndMaterialsContractMemberwldn:EnergyMember2021-07-032021-10-010001370450us-gaap:FixedPriceContractMemberwldn:EngineeringConsultingServicesMember2021-07-032021-10-010001370450us-gaap:FixedPriceContractMemberwldn:EnergyMember2021-07-032021-10-010001370450wldn:UnitBasedContractMember2021-07-032021-10-010001370450wldn:PublicUtilityMember2021-07-032021-10-010001370450wldn:GovernmentsMember2021-07-032021-10-010001370450wldn:CommercialMember2021-07-032021-10-010001370450us-gaap:TimeAndMaterialsContractMember2021-07-032021-10-010001370450us-gaap:IntersegmentEliminationMember2021-07-032021-10-010001370450us-gaap:FixedPriceContractMember2021-07-032021-10-010001370450wldn:UnitBasedContractMemberwldn:EngineeringConsultingServicesMember2021-01-022021-10-010001370450wldn:UnitBasedContractMemberwldn:EnergyMember2021-01-022021-10-010001370450wldn:PublicUtilityMemberwldn:EngineeringConsultingServicesMember2021-01-022021-10-010001370450wldn:PublicUtilityMemberwldn:EnergyMember2021-01-022021-10-010001370450wldn:GovernmentsMemberwldn:EngineeringConsultingServicesMember2021-01-022021-10-010001370450wldn:GovernmentsMemberwldn:EnergyMember2021-01-022021-10-010001370450wldn:CommercialMemberwldn:EngineeringConsultingServicesMember2021-01-022021-10-010001370450wldn:CommercialMemberwldn:EnergyMember2021-01-022021-10-010001370450us-gaap:TimeAndMaterialsContractMemberwldn:EngineeringConsultingServicesMember2021-01-022021-10-010001370450us-gaap:TimeAndMaterialsContractMemberwldn:EnergyMember2021-01-022021-10-010001370450us-gaap:FixedPriceContractMemberwldn:EngineeringConsultingServicesMember2021-01-022021-10-010001370450us-gaap:FixedPriceContractMemberwldn:EnergyMember2021-01-022021-10-010001370450country:USwldn:EngineeringConsultingServicesMember2021-01-022021-10-010001370450country:USwldn:EnergyMember2021-01-022021-10-010001370450wldn:UnitBasedContractMember2021-01-022021-10-010001370450wldn:PublicUtilityMember2021-01-022021-10-010001370450wldn:GovernmentsMember2021-01-022021-10-010001370450wldn:CommercialMember2021-01-022021-10-010001370450us-gaap:TimeAndMaterialsContractMember2021-01-022021-10-010001370450us-gaap:IntersegmentEliminationMember2021-01-022021-10-010001370450us-gaap:FixedPriceContractMember2021-01-022021-10-010001370450country:US2021-01-022021-10-010001370450wldn:ComputerHardwareAndSoftwareMember2022-09-300001370450wldn:AutomobilesTrucksAndFieldEquipmentMember2022-09-300001370450us-gaap:LeaseholdImprovementsMember2022-09-300001370450us-gaap:FurnitureAndFixturesMember2022-09-300001370450wldn:ComputerHardwareAndSoftwareMember2021-12-310001370450wldn:AutomobilesTrucksAndFieldEquipmentMember2021-12-310001370450us-gaap:LeaseholdImprovementsMember2021-12-310001370450us-gaap:FurnitureAndFixturesMember2021-12-310001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-04-010001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-07-032021-10-010001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-04-032021-07-020001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-022021-04-020001370450us-gaap:RetainedEarningsMember2022-07-022022-09-300001370450us-gaap:RetainedEarningsMember2022-04-022022-07-010001370450us-gaap:RetainedEarningsMember2022-01-012022-04-010001370450us-gaap:RetainedEarningsMember2021-07-032021-10-010001370450us-gaap:RetainedEarningsMember2021-04-032021-07-020001370450us-gaap:RetainedEarningsMember2021-01-022021-04-020001370450wldn:DelayedDrawTermLoanFacilityMemberus-gaap:NotesPayableToBanksMember2019-06-260001370450us-gaap:RevolvingCreditFacilityMemberus-gaap:NotesPayableToBanksMember2019-06-260001370450srt:MinimumMemberwldn:DelayedDrawTermLoanFacilityMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-11-012022-11-010001370450srt:MinimumMemberus-gaap:RevolvingCreditFacilityMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-11-012022-11-010001370450srt:MinimumMemberus-gaap:LetterOfCreditMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-11-012022-11-010001370450srt:MaximumMemberwldn:DelayedDrawTermLoanFacilityMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-11-012022-11-010001370450srt:MaximumMemberus-gaap:RevolvingCreditFacilityMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-11-012022-11-010001370450srt:MaximumMemberus-gaap:LetterOfCreditMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-11-012022-11-010001370450wldn:CreditAgreement2019DuringExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-11-012022-11-010001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2022-03-082022-03-080001370450srt:MinimumMemberus-gaap:LetterOfCreditMemberus-gaap:NotesPayableToBanksMember2022-03-082022-03-080001370450srt:MaximumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2022-03-082022-03-080001370450srt:MaximumMemberus-gaap:LetterOfCreditMemberus-gaap:NotesPayableToBanksMember2022-03-082022-03-080001370450srt:MinimumMembersrt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2022-01-012022-12-300001370450srt:MinimumMembersrt:ScenarioForecastMemberus-gaap:LetterOfCreditMemberus-gaap:NotesPayableToBanksMember2022-01-012022-12-300001370450srt:MaximumMembersrt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2022-01-012022-12-300001370450srt:MaximumMembersrt:ScenarioForecastMemberus-gaap:LetterOfCreditMemberus-gaap:NotesPayableToBanksMember2022-01-012022-12-300001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2021-04-302021-04-300001370450srt:MinimumMemberus-gaap:LetterOfCreditMemberus-gaap:NotesPayableToBanksMember2021-04-302021-04-300001370450srt:MaximumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2021-04-302021-04-300001370450srt:MaximumMemberus-gaap:LetterOfCreditMemberus-gaap:NotesPayableToBanksMember2021-04-302021-04-300001370450srt:MinimumMember2022-09-300001370450srt:MaximumMember2022-09-300001370450us-gaap:NewYorkStateDivisionOfTaxationAndFinanceMemberus-gaap:TaxYear2019Member2021-06-102021-06-100001370450us-gaap:NewYorkStateDivisionOfTaxationAndFinanceMemberus-gaap:TaxYear2018Member2021-06-102021-06-100001370450us-gaap:NewYorkStateDivisionOfTaxationAndFinanceMemberus-gaap:TaxYear2017Member2021-06-102021-06-100001370450us-gaap:OperatingSegmentsMemberwldn:EngineeringConsultingServicesMember2022-07-022022-09-300001370450us-gaap:OperatingSegmentsMemberwldn:EnergyMember2022-07-022022-09-300001370450us-gaap:CorporateNonSegmentMember2022-07-022022-09-300001370450us-gaap:CorporateNonSegmentMember2022-01-012022-09-300001370450us-gaap:OperatingSegmentsMemberwldn:EngineeringConsultingServicesMember2021-07-032021-10-010001370450us-gaap:OperatingSegmentsMemberwldn:EnergyMember2021-07-032021-10-010001370450us-gaap:CorporateNonSegmentMember2021-07-032021-10-010001370450us-gaap:CorporateNonSegmentMember2021-01-022021-10-010001370450wldn:Covid19Member2022-01-012022-09-300001370450wldn:EngineeringConsultingServicesMember2021-12-310001370450wldn:EnergyMember2021-12-3100013704502022-10-012022-12-300001370450srt:MinimumMember2022-01-012022-12-300001370450srt:MaximumMember2022-01-012022-12-3000013704502022-01-012022-12-300001370450srt:MinimumMember2022-01-012022-04-010001370450srt:MaximumMember2022-01-012022-04-0100013704502021-10-022021-12-310001370450srt:MinimumMemberus-gaap:TradeNamesMember2022-01-012022-09-300001370450srt:MinimumMemberus-gaap:NoncompeteAgreementsMember2022-01-012022-09-300001370450srt:MinimumMemberus-gaap:CustomerRelationshipsMember2022-01-012022-09-300001370450srt:MaximumMemberus-gaap:TradeNamesMember2022-01-012022-09-300001370450srt:MaximumMemberus-gaap:NoncompeteAgreementsMember2022-01-012022-09-300001370450srt:MaximumMemberus-gaap:CustomerRelationshipsMember2022-01-012022-09-300001370450us-gaap:OrderOrProductionBacklogMember2022-01-012022-09-300001370450us-gaap:DevelopedTechnologyRightsMember2022-01-012022-09-300001370450us-gaap:TradeNamesMember2022-09-300001370450us-gaap:OrderOrProductionBacklogMember2022-09-300001370450us-gaap:NoncompeteAgreementsMember2022-09-300001370450us-gaap:DevelopedTechnologyRightsMember2022-09-300001370450us-gaap:CustomerRelationshipsMember2022-09-300001370450us-gaap:TradeNamesMember2021-12-310001370450us-gaap:OrderOrProductionBacklogMember2021-12-310001370450us-gaap:NoncompeteAgreementsMember2021-12-310001370450us-gaap:DevelopedTechnologyRightsMember2021-12-310001370450us-gaap:CustomerRelationshipsMember2021-12-3100013704502021-01-022021-12-310001370450us-gaap:InterestRateSwapMemberus-gaap:CashFlowHedgingMember2022-01-310001370450us-gaap:InterestRateSwapMemberus-gaap:CashFlowHedgingMember2019-01-310001370450wldn:EngineeringConsultingServicesMember2022-07-022022-09-300001370450wldn:EnergyMember2022-07-022022-09-300001370450wldn:EngineeringConsultingServicesMember2022-01-012022-09-300001370450wldn:EnergyMember2022-01-012022-09-300001370450wldn:EngineeringConsultingServicesMember2021-07-032021-10-010001370450wldn:EnergyMember2021-07-032021-10-010001370450wldn:EngineeringConsultingServicesMember2021-01-022021-10-010001370450wldn:EnergyMember2021-01-022021-10-010001370450wldn:QualifiedCashOrDeferredArrangementMember2022-01-012022-09-300001370450wldn:DefinedContributionPlanMember2022-01-012022-09-300001370450wldn:DefinedContributionPlanMember2021-01-022021-10-010001370450srt:MinimumMembersrt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-12-300001370450srt:MinimumMemberwldn:CreditAgreement2019DuringExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-11-010001370450srt:MinimumMemberwldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-11-010001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-03-080001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:LondonInterbankOfferedRateLIBORMember2021-04-300001370450wldn:TermAloanMemberus-gaap:NotesPayableToBanksMember2019-06-260001370450wldn:TermAloanMemberus-gaap:NotesPayableToBanksMember2022-09-300001370450wldn:OtherDebtMemberus-gaap:NotesPayableOtherPayablesMember2022-09-300001370450wldn:DelayedDrawTermLoanFacilityMemberus-gaap:NotesPayableToBanksMember2022-09-300001370450wldn:TermAloanMemberus-gaap:NotesPayableToBanksMember2021-12-310001370450wldn:OtherDebtMemberus-gaap:NotesPayableOtherPayablesMember2021-12-310001370450wldn:DelayedDrawTermLoanFacilityMemberus-gaap:NotesPayableToBanksMember2021-12-310001370450srt:MinimumMemberwldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-11-012022-11-010001370450srt:MinimumMemberwldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMemberus-gaap:BaseRateMember2022-11-012022-11-010001370450srt:MaximumMemberwldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-11-012022-11-010001370450srt:MaximumMemberwldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMemberus-gaap:BaseRateMember2022-11-012022-11-010001370450wldn:CreditAgreement2019DuringExtendedCovenantReliefPeriodMemberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-11-012022-11-010001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-03-082022-03-080001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:BaseRateMember2022-03-082022-03-080001370450srt:MaximumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-03-082022-03-080001370450srt:MaximumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:BaseRateMember2022-03-082022-03-080001370450srt:MinimumMembersrt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-01-012022-12-300001370450srt:MinimumMembersrt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:BaseRateMember2022-01-012022-12-300001370450srt:MaximumMembersrt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-01-012022-12-300001370450srt:MaximumMembersrt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:BaseRateMember2022-01-012022-12-300001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:LondonInterbankOfferedRateLIBORMember2021-04-302021-04-300001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:BaseRateMember2021-04-302021-04-300001370450srt:MaximumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:LondonInterbankOfferedRateLIBORMember2021-04-302021-04-300001370450srt:MaximumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:BaseRateMember2021-04-302021-04-300001370450wldn:AccountsReceivableNetCurrentMember2021-12-310001370450wldn:PuebloCountySchoolDistrictDormitoryAuthorityStateOfNewYorkAndLosAngelesDepartmentOfWaterAndPowerMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EnergyMember2022-07-022022-09-300001370450wldn:TopTenCustomersThreeMonthsEnded2022September30Memberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2022-07-022022-09-300001370450stpr:NYus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2022-07-022022-09-300001370450stpr:CAus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2022-07-022022-09-300001370450wldn:LosAngelesDepartmentOfWaterAndPowerAndPuebloCountySchoolDistrictMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EnergyMember2022-01-012022-09-300001370450wldn:TopTenCustomersNineMonthsEnded2022September30Memberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-09-300001370450wldn:LosAngelesDepartmentOfWaterAndPowerMemberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-09-300001370450stpr:NYus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2022-01-012022-09-300001370450stpr:CAus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2022-01-012022-09-300001370450wldn:LosAngelesDepartmentOfWaterAndPowerMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EnergyMember2021-07-032021-10-010001370450wldn:TopTenCustomersThreeMonthsEnded2021October01Memberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2021-07-032021-10-010001370450wldn:PuebloCountySchoolDistrictMemberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2021-07-032021-10-010001370450wldn:LosAngelesDepartmentOfWaterAndPowerMemberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2021-07-032021-10-010001370450stpr:NYus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2021-07-032021-10-010001370450stpr:CAus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2021-07-032021-10-010001370450wldn:LosAngelesDepartmentOfWaterAndPowerAndConsolidatedEdisonOfNewYorkMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EnergyMember2021-01-022021-10-010001370450wldn:CityOfElkGroveMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EngineeringConsultingServicesMember2021-01-022021-10-010001370450wldn:TopTenCustomersNineMonthsEnded2021October01Memberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2021-01-022021-10-010001370450stpr:NYus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2021-01-022021-10-010001370450stpr:CAus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2021-01-022021-10-010001370450us-gaap:CommonStockMember2022-09-300001370450us-gaap:CommonStockMember2022-07-010001370450us-gaap:CommonStockMember2022-04-010001370450us-gaap:CommonStockMember2021-12-310001370450us-gaap:CommonStockMember2021-10-010001370450us-gaap:CommonStockMember2021-07-020001370450us-gaap:CommonStockMember2021-04-020001370450us-gaap:CommonStockMember2021-01-010001370450us-gaap:AccountingStandardsUpdate202101Member2022-09-3000013704502021-01-0100013704502021-01-022021-10-010001370450us-gaap:OperatingSegmentsMemberwldn:EngineeringConsultingServicesMember2022-09-300001370450us-gaap:OperatingSegmentsMemberwldn:EnergyMember2022-09-300001370450wldn:EngineeringConsultingServicesMember2022-09-300001370450wldn:EnergyMember2022-09-300001370450us-gaap:IntersegmentEliminationMember2022-09-300001370450us-gaap:CorporateNonSegmentMember2022-09-300001370450us-gaap:OperatingSegmentsMemberwldn:EngineeringConsultingServicesMember2021-10-010001370450us-gaap:OperatingSegmentsMemberwldn:EnergyMember2021-10-010001370450wldn:EngineeringConsultingServicesMember2021-10-010001370450wldn:EnergyMember2021-10-010001370450us-gaap:IntersegmentEliminationMember2021-10-010001370450us-gaap:CorporateNonSegmentMember2021-10-0100013704502021-10-010001370450us-gaap:StockCompensationPlanMember2022-07-022022-09-300001370450us-gaap:StockCompensationPlanMember2021-07-032021-10-010001370450us-gaap:AdditionalPaidInCapitalMember2021-07-032021-10-0100013704502021-07-032021-10-010001370450us-gaap:AdditionalPaidInCapitalMember2022-07-022022-09-3000013704502022-07-022022-09-300001370450us-gaap:AdditionalPaidInCapitalMember2022-04-022022-07-0100013704502022-04-022022-07-010001370450us-gaap:AdditionalPaidInCapitalMember2022-01-012022-04-0100013704502022-01-012022-04-010001370450us-gaap:CommonStockMember2021-04-032021-07-020001370450us-gaap:AdditionalPaidInCapitalMember2021-04-032021-07-0200013704502021-04-032021-07-020001370450us-gaap:AdditionalPaidInCapitalMember2021-01-022021-04-0200013704502021-01-022021-04-0200013704502022-09-3000013704502021-12-3100013704502022-11-0200013704502022-01-012022-09-30xbrli:sharesiso4217:USDiso4217:USDxbrli:sharesxbrli:purewldn:segmentwldn:statewldn:Ywldn:itemwldn:contract

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION

Washington, D.C.  20549

FORM 10-Q

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

For the quarterly period ended September 30, 2022

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

WILLDAN GROUP, INC.

(Exact Name of Registrant as Specified in Its Charter)

Delaware

14-1951112

(State or Other Jurisdiction of
Incorporation or Organization)

(IRS Employer Identification No.)

2401 East Katella Avenue, Suite 300
Anaheim, California

92806

(Address of Principal Executive Offices)

(Zip Code)

Registrant’s Telephone Number, Including Area Code: (800424-9144

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

Title of each class

Trading Symbol(s)

Name of each exchange on which registered

Common Stock, par value $0.01 per share

WLDN

The Nasdaq Stock Market LLC

(Nasdaq Global Market)

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

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

Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See 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

As of November 2, 2022, there were 13,294,922 shares of common stock, $0.01 par value per share, of Willdan Group, Inc. issued and outstanding.

i

CAUTIONARY STATEMENT REGARDING FORWARD-LOOKING INFORMATION

This Quarterly Report on Form 10-Q (this “10-Q”) contains statements that constitute forward-looking statements as that term is defined by the Private Securities Litigation Reform Act of 1995, as amended. These statements concern our business, operations and financial performance and condition as well as our plans, objectives and expectations for our business operations and financial performance and condition, which are subject to risks and uncertainties. All statements other than statements of historical fact included in this 10-Q are forward-looking statements. These statements may include words such as “aim,” “anticipate,” “assume,” “believe,” “can have,” “could,” “due,” “estimate,” “expect,” “goal,” “intend,” “likely,” “may,” “objective,” “plan,” “potential,” “positioned,” “predict,” “should,” “target,” “will,” “would” and other words and terms of similar meaning in connection with any discussion of the timing or nature of future operating or financial performance or other events or trends. For example, all statements we make relating to our plans and objectives for future operations, growth or initiatives and strategies are forward-looking statements.

These forward-looking statements are based on current expectations, estimates, forecasts and projections about our business and the industry in which we operate and our management’s beliefs and assumptions. We derive many of our forward-looking statements from our own operating budgets and forecasts, which are based upon many detailed assumptions. While we believe that our assumptions are reasonable, we caution that predicting the impact of known factors is very difficult, and we cannot anticipate all factors that could affect our actual results.

All of our forward-looking statements are subject to risks and uncertainties that may cause our actual results to differ materially from our expectations. Important factors that could cause actual results to differ materially from our expectations include, but are not limited to:

our ability to adequately complete projects in a timely manner;
our ability to compete successfully in the highly competitive energy services market, which represented 81% of our consolidated revenue in fiscal year 2021;
our reliance on work from our top ten clients, which accounted for 49% of our consolidated contract revenue for fiscal year 2021;
the extent to which the coronavirus (“Covid-19”) pandemic and measures taken to contain its spread ultimately impact our business, results of operation and financial condition;
changes in state, local and regional economies and government budgets;
our ability to win new contracts, to renew existing contracts and to compete effectively for contracts awarded through bidding processes;
our ability to successfully integrate our acquisitions and execute on our growth strategy;
our ability to make principal and interest payments on our outstanding debt as they come due and to comply with the financial covenants contained in our debt agreements;
our ability to obtain financing and to refinance our outstanding debt as it matures;
our ability to attract and retain managerial, technical, and administrative talent; and
our ability to manage supply chain constraints, labor shortages, and rising inflation.

The above is not a complete list of factors or events that could cause actual results to differ from our expectations, and we cannot predict all of them. All written and oral forward-looking statements attributable to us, or

1

persons acting on our behalf, are expressly qualified in their entirety by the cautionary statements disclosed elsewhere in this Quarterly Report on Form 10-Q, and under Part I, Item 1A. “Risk Factors”, “Management’s Discussion and Analysis of Financial Condition and Results of Operations” and in our Annual Report on Form 10-K for the fiscal year ended December 31, 2021, as such disclosures may be amended, supplemented or superseded from time to time by other reports we file with the Securities and Exchange Commission, including subsequent Annual Reports on Form 10-K, Quarterly Reports on Form 10-Q, Current Reports on Form 8-K and public communications. You should evaluate all forward-looking statements made in this Quarterly Report on Form 10-Q and otherwise in the context of these risks and uncertainties.

Potential investors and other readers are urged to consider these factors carefully in evaluating the forward-looking statements and are cautioned not to place undue reliance on any forward-looking statements we make. These forward-looking statements speak only as of the date of this Quarterly Report on Form 10-Q and are not guarantees of future performance or developments and involve known and unknown risks, uncertainties and other factors that are in many cases beyond our control. Except as required by law, we undertake no obligation to update or revise any forward-looking statements publicly, whether as a result of new information, future developments or otherwise.

2

PART I. FINANCIAL INFORMATION

Item 1. Financial Statements

WILLDAN GROUP, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED BALANCE SHEETS

(in thousands, except par value)

(Unaudited)

    

September 30,

    

December 31,

2022

2021

Assets

Current assets:

Cash and cash equivalents

$

8,818

$

11,221

Accounts receivable, net of allowance for doubtful accounts of $756 and $1,115 at September 30, 2022 and December 31, 2021, respectively

 

60,376

 

67,211

Contract assets

 

74,924

 

59,288

Other receivables

 

5,112

 

6,267

Prepaid expenses and other current assets

 

4,891

 

4,972

Total current assets

 

154,121

 

148,959

Equipment and leasehold improvements, net

 

21,147

 

16,757

Goodwill

130,124

130,124

Right-of-use assets

12,715

15,177

Other intangible assets, net

44,182

52,713

Other assets

 

11,862

 

13,843

Deferred income taxes, net

20,960

16,849

Total assets

$

395,111

$

394,422

Liabilities and Stockholders’ Equity

Current liabilities:

Accounts payable

$

23,487

$

36,672

Accrued liabilities

 

50,996

 

35,680

Contingent consideration payable

2,491

10,206

Contract liabilities

 

12,163

 

13,499

Notes payable

 

15,510

 

15,036

Finance lease obligations

970

539

Lease liability

4,889

5,575

Total current liabilities

 

110,506

 

117,207

Contingent consideration payable

832

Notes payable

93,912

85,538

Finance lease obligations, less current portion

 

1,657

 

778

Lease liability, less current portion

8,747

10,768

Other noncurrent liabilities

78

78

Total liabilities

 

214,900

 

215,201

Commitments and contingencies

Stockholders’ equity:

Preferred stock, $0.01 par value, 10,000 shares authorized, no shares issued and outstanding

 

 

Common stock, $0.01 par value, 40,000 shares authorized; 13,297 and 12,804 shares issued and outstanding at September 30, 2022 and December 31, 2021, respectively

 

133

 

128

Additional paid-in capital

 

176,002

 

167,032

Accumulated other comprehensive loss

(38)

Retained earnings

 

4,076

 

12,099

Total stockholders’ equity

 

180,211

 

179,221

Total liabilities and stockholders’ equity

$

395,111

$

394,422

See accompanying notes to Condensed Consolidated Financial Statements.

3

WILLDAN GROUP, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME

(in thousands, except per share amounts)

(Unaudited)

Three Months Ended

Nine Months Ended

September 30,

October 1,

September 30,

October 1,

    

2022

    

2021

    

2022

    

2021

Contract revenue

$

121,399

$

98,297

$

315,882

$

261,537

Direct costs of contract revenue (inclusive of directly related depreciation and amortization):

Salaries and wages

 

21,420

 

16,346

 

61,514

 

48,532

Subcontractor services and other direct costs

 

62,457

 

43,824

 

153,896

 

111,860

Total direct costs of contract revenue

 

83,877

 

60,170

 

215,410

 

160,392

General and administrative expenses:

Salaries and wages, payroll taxes and employee benefits

 

20,373

 

19,374

 

60,169

 

57,530

Facilities and facility related

 

2,228

 

2,351

 

6,999

 

7,373

Stock-based compensation

 

1,607

 

4,210

 

6,626

 

14,349

Depreciation and amortization

 

4,405

 

4,267

 

13,240

 

12,678

Other

 

9,664

 

6,482

 

25,099

 

19,033

Total general and administrative expenses

 

38,277

 

36,684

 

112,133

 

110,963

Income (Loss) from operations

 

(755)

 

1,443

 

(11,661)

 

(9,818)

Other income (expense):

Interest expense, net

 

(1,435)

 

(937)

 

(3,216)

 

(3,100)

Other, net

 

740

 

98

 

1,266

 

34

Total other expense, net

 

(695)

 

(839)

 

(1,950)

 

(3,066)

Income (Loss) before income taxes

 

(1,450)

 

604

 

(13,611)

 

(12,884)

Income tax (benefit) expense

 

(1,526)

 

(236)

 

(5,588)

 

(5,357)

Net income (loss)

76

840

(8,023)

(7,527)

Other comprehensive income (loss):

Unrealized gain (loss) on derivative contracts, net of tax

111

38

343

Comprehensive income (loss)

$

76

$

951

$

(7,985)

$

(7,184)

Earnings (Loss) per share:

Basic

$

0.01

$

0.07

$

(0.62)

$

(0.61)

Diluted

$

0.01

$

0.06

$

(0.62)

$

(0.61)

Weighted-average shares outstanding:

Basic

 

13,110

 

12,606

 

12,971

 

12,391

Diluted

 

13,360

 

13,141

 

12,971

 

12,391

See accompanying notes to Condensed Consolidated Financial Statements.

4

WILLDAN GROUP, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY

(in thousands)

(Unaudited)

Accumulated

Additional

Other

Common Stock

Paid-in

Comprehensive

Retained

    

Shares

    

Amount

    

Capital

    

Income (Loss)

    

Earnings

    

Total

Balance at December 31, 2021

 

12,804

$

128

$

167,032

$

(38)

$

12,099

$

179,221

Shares of common stock issued in connection with employee stock purchase plan

 

52

1

1,560

 

1,561

Shares of common stock issued in connection with incentive stock plan

4

23

23

Shares used to pay taxes on stock grants

 

(27)

(837)

 

(837)

Issuance of restricted stock award and units

373

3

(3)

Stock-based compensation expense

 

3,305

 

3,305

Net income (loss)

 

(3,773)

 

(3,773)

Net unrealized gain on derivative contracts

38

 

38

Balance at April 1, 2022

 

13,206

$

132

$

171,080

$

$

8,326

$

179,538

Shares of common stock issued in connection with employee stock purchase plan

 

 

Shares of common stock issued in connection with incentive stock plan

Shares used to pay taxes on stock grants

 

(5)

(116)

 

(116)

Issuance of restricted stock award and units

14

Stock-based compensation expense

 

1,714

 

1,714

Net income (loss)

 

(4,326)

 

(4,326)

Net unrealized gain on derivative contracts

 

Balance at July 1, 2022

 

13,215

$

132

$

172,678

$

$

4,000

$

176,810

Shares of common stock issued in connection with employee stock purchase plan

 

63

1

1,475

 

1,476

Shares of common stock issued in connection with incentive stock plan

29

247

247

Shares used to pay taxes on stock grants

 

(5)

 

(5)

Issuance of restricted stock award and units

(10)

Stock-based compensation expense

 

1,607

 

1,607

Net income (loss)

 

76

 

76

Net unrealized gain on derivative contracts

 

Balance at September 30, 2022

 

13,297

$

133

$

176,002

$

$

4,076

$

180,211

5

WILLDAN GROUP, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY

(in thousands)

(Unaudited)

Accumulated

Additional

other

Common Stock

Paid-in

Comprehensive

Retained

    

Shares

    

Amount

    

Capital

    

Income (Loss)

    

Earnings

    

Total

Balance at January 1, 2021

 

12,160

$

122

$

149,014

$

(488)

$

20,516

$

169,164

Shares of common stock issued in connection with employee stock purchase plan

 

66

1

1,384

 

1,385

Shares of common stock issued in connection with incentive stock plan

27

527

527

Shares used to pay taxes on stock grants

 

(12)

 

(12)

Issuance of restricted stock award and units

255

2

(3)

(1)

Stock-based compensation expense

 

4,206

 

4,206

Net income (loss)

 

(3,766)

 

(3,766)

Net unrealized gain on derivative contracts

128

 

128

Balance at April 2, 2021

 

12,508

$

125

$

155,116

$

(360)

$

16,750

$

171,631

Shares of common stock issued in connection with incentive stock plan

77

1

850

851

Shares used to pay taxes on stock grants

 

(79)

(1)

(3,104)

 

(3,105)

Issuance of restricted stock award and units

207

2

(2)

Stock-based compensation expense

 

5,933

 

5,933

Net income (loss)

 

(4,601)

 

(4,601)

Net unrealized gain on derivative contracts

104

 

104

Balance at July 2, 2021

 

12,713

$

127

$

158,793

$

(256)

$

12,149

$

170,813

Shares of common stock issued in connection with employee stock purchase plan

 

40

1

1,270

 

1,271

Shares of common stock issued in connection with incentive stock plan

35

369

369

Issuance of restricted stock award and units

1

Stock-based compensation expense

 

4,210

 

4,210

Net income (loss)

 

840

 

840

Net unrealized gain on derivative contracts

111

 

111

Balance at October 1, 2021

 

12,789

$

128

$

164,642

$

(145)

$

12,989

$

177,614

See accompanying notes to Condensed Consolidated Financial Statements.

6

WILLDAN GROUP, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS

(in thousands)

(Unaudited)

Nine Months Ended

September 30,

October 1,

    

2022

    

2021

Cash flows from operating activities:

Net income (loss)

$

(8,023)

$

(7,527)

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

Depreciation and amortization

 

13,240

 

12,678

Deferred income taxes, net

 

(4,111)

 

(3,544)

(Gain) loss on sale/disposal of equipment

 

(67)

 

(37)

Provision for doubtful accounts

 

230

 

87

Stock-based compensation

 

6,626

 

14,349

Accretion and fair value adjustments of contingent consideration

1,659

860

Changes in operating assets and liabilities, net of effects from business acquisitions:

Accounts receivable

 

6,605

 

(1,892)

Contract assets

 

(15,636)

 

(3,318)

Other receivables

 

1,155

 

376

Prepaid expenses and other current assets

 

256

 

2,005

Other assets

 

1,981

 

(4,557)

Accounts payable

 

(13,185)

 

(17,787)

Accrued liabilities

 

15,354

 

5,726

Contract liabilities

 

(1,336)

 

1,016

Right-of-use assets

 

(245)

 

(145)

Net cash (used in) provided by operating activities

 

4,503

 

(1,710)

Cash flows from investing activities:

Purchase of equipment and leasehold improvements

 

(6,969)

 

(4,898)

Proceeds from sale of equipment

75

46

Net cash (used in) provided by investing activities

 

(6,894)

 

(4,852)

Cash flows from financing activities:

Payments on contingent consideration

 

(10,206)

 

(6,615)

Payments on notes payable

(1,577)

(1,724)

Proceeds from notes payable

 

 

206

Borrowings under term loan facility and line of credit

20,000

Repayments under term loan facility and line of credit

(9,750)

(9,750)

Principal payments on finance leases

 

(827)

 

(440)

Proceeds from stock option exercise

 

270

 

1,747

Proceeds from sales of common stock under employee stock purchase plan

 

3,036

 

2,656

Cash used to pay taxes on stock grants

(958)

(3,117)

Restricted Stock Award and Units

(1)

Net cash (used in) provided by financing activities

 

(12)

 

(17,038)

Net increase (decrease) in cash and cash equivalents

 

(2,403)

 

(23,600)

Cash and cash equivalents at beginning of period

 

11,221

 

28,405

Cash and cash equivalents at end of period

$

8,818

$

4,805

Supplemental disclosures of cash flow information:

Cash paid (received) during the period for:

Interest

$

2,790

$

2,701

Income taxes

 

(1,027)

 

(1,742)

Supplemental disclosures of noncash investing and financing activities:

Equipment acquired under finance leases

2,137

987

See accompanying notes to Condensed Consolidated Financial Statements.

7

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

(Unaudited)

1. ORGANIZATION AND OPERATIONS OF THE COMPANY

Willdan Group, Inc. (“Willdan” or the “Company”) is a provider of professional, technical and consulting services to utilities, private industry, and public agencies at all levels of government. As resources and infrastructures undergo continuous change, the Company helps organizations and their communities evolve and thrive by providing a wide range of technical services for energy solutions and government infrastructure. Through engineering, program management, policy advisory, and software and data management, the Company designs and delivers trusted, comprehensive, innovative, and proven solutions to improve efficiency, resiliency, and sustainability in energy and infrastructure.

The Company’s broad portfolio of services operates within two financial reporting segments: (1) Energy and (2) Engineering and Consulting. The interfaces and synergies between these segments are important elements of the Company’s strategy to design and deliver trusted, comprehensive, innovative, and proven solutions for its customers.

The accounting policies followed by the Company are set forth in Part II, Item 8, Note 1, Organization and Operations of the Company, of the Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. In the opinion of management, all adjustments necessary to fairly state the Condensed Consolidated Financial Statements have been made. All such adjustments are of a normal, recurring nature. Certain information and footnote disclosures normally included in the Consolidated Financial Statements prepared in accordance with accounting principles generally accepted in the United States (“U.S. GAAP”) have been condensed or omitted pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). These Condensed Consolidated Financial Statements and related notes thereto should be read in conjunction with the Consolidated Financial Statements and the notes thereto included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. The results of operations for interim periods are not necessarily indicative of results to be expected for the full year.

Fiscal Years

The Company operates and reports its annual financial results based on 52 or 53-week periods ending on the Friday closest to December 31. The Company operates and reports its quarterly financial results based on the 13-week period ending on the Friday closest to June 30, September 30, and December 31 and the 13 or 14-week period ending on the Friday closest to March 31, as applicable. Fiscal year 2022, which ends on December 30, 2022, will be comprised of 52 weeks, with all quarters consisting of 13 weeks each. Fiscal year 2021, which ended on December 31, 2021, was comprised of 52 weeks, with all quarters consisting of 13 weeks each. All references to years in the notes to consolidated financial statements represent fiscal years.

Use of Estimates

The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the consolidated financial statements. Estimates also affect the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.

8

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

Historical and Current Impact of Covid-19

The coronavirus (“Covid-19”) pandemic and efforts to limit its spread negatively impacted the Company’s operations during its fiscal year 2020 and continued to impact the Company, albeit to a lesser extent, during fiscal year 2021. In California and New York, the states in which the Company has historically derived a majority of its revenue, mandatory shutdown orders were issued in March 2020 followed by phased re-openings that began in May 2020, followed by periods of curtailments as a result of resurgences of Covid-19 cases, and subsequent re-openings through 2020 and 2021. The Company’s largest program for the Los Angeles Department of Water and Power (“LADWP”) resumed in the third quarter of fiscal 2021 and was the Company’s last program suspended due to Covid-19. In addition, through fiscal year 2020 and 2021, none of the Company’s contracts were cancelled due to Covid-19.

Through the current fiscal year 2022, though none of the Company’s current programs are under suspension due to Covid-19 restrictions, certain market segments such as small business customers of major utilities continue to experience lingering impacts of the reduced economic activity due to the Covid-19 related mandates in 2020 and 2021. As of November 2, 2022, none of the Company’s contracts were cancelled as a result of Covid-19.

Asset and liability valuation and other estimates used in preparation of financial statements

As of September 30, 2022, the Company did not have any impairment with respect to goodwill or long-lived assets, including intangible assets. Because the full extent of any impact of a resurgence of the Covid-19 outbreak and efforts to slow its spread are unknown at this time, they could, under certain circumstances, cause impairment and result in a non-cash impairment charge being recorded in future periods. Changes to the estimated future profitability of the business may require that the Company establish an additional valuation allowance against all or some portion of its net deferred tax assets.

Impact on Clients and Subcontractors and Other Risks

The Company primarily works for utilities, municipalities and other public agencies. Should there be a resurgence related to Covid-19, some of these customers could experience significant budget shortfalls for the current year and beyond as a result of the measures taken to mitigate the resurgence effects of the Covid-19 pandemic and/or revenue shortfalls as a result of reduced economic activity. Although none of the Company’s contracts with governmental or public agencies were materially modified during its fiscal year 2020 or fiscal year 2021, these potential budget deficits could result in delayed funding for existing contracts with the Company, postponements of new contracts or price concessions. Further, most of the Company’s clients are not committed to purchase any minimum amount of services, as the Company agreements with them are based on a “purchase order” or “master service agreement” model. As a result, they may discontinue utilizing some or all of the Company’s services with little or no notice.

 In addition, the Company relies on subcontractors and material suppliers to complete a substantial portion of its work, especially in its Energy segment. If the Company’s significant subcontractors and material suppliers suffer significant economic harm and must limit or cease operations or file for bankruptcy as a result of the current economic slowdown, the Company’s subcontractors and material suppliers may not be able to fulfill their contractual obligations satisfactorily and the Company may not have the ability to select its subcontractors and material suppliers of choice for new contracts. If the Company’s subcontractors and material suppliers are not able to fulfill their contractual obligations, it could result in a significant increase in costs for the Company to complete the projects or cause significant delays to the realization of revenues under those projects. The ultimate impact of Covid-19 on the Company’s financial condition and results of operations will depend on all of the factors noted above, including other factors that the Company may not be able to forecast at this time. See the risk factor “The Covid-19 pandemic and health and safety measures intended to slow its spread have adversely affected, and may continue to adversely affect, our business, results of operations and financial condition.” under Part I. Item 1A. “Risk Factors” of the Company’s Annual Report on Form 10-K for the year ended December 31, 2021. While Covid-19 has had an adverse effect on the Company’s business, financial condition and results of operations, the Company is unable to predict the extent or duration of future impacts at this time.

9

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

2. RECENT ACCOUNTING PRONOUNCEMENTS

Accounting Pronouncements Recently Adopted

In March 2020, the FASB issued ASU No. 2020-04, “Reference Rate Reform (Topic 848): facilitation of the Effects of Reference Rate Reform on Financial Reporting” (“ASU 2020-04”). ASU 2020-04 provides optional expedients and exceptions for applying U.S. GAAP to contract modifications and hedging relationships that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. ASU 2020-04 provides, among other things, guidance that modifications of contracts within the scope of Topic 470, Debt, should be accounted for by prospectively adjusting the effective interest rate; modifications of contracts within the scope of Topic 840, Leases, should be accounted for as a continuation of the existing contract; and, changes in the critical terms of hedging relationships, caused by reference rate reform, should not result in the de-designation of the instrument, provided certain criteria are met. In January 2021, the FASB issued ASU No. 2021-01, “Reference Rate Reform (Topic 848) - Scope” (“ASU 2021-01”). ASU 2021-01 clarifies the scope and application of ASU 2020-04 and permits entities, among other things, to elect certain optional expedients and exceptions when accounting for derivative contracts and certain hedging relationships affected by changes in the interest rates used for discounting cash flows. The Company adopted this standard effective March 8, 2022. The Company’s previous exposure to LIBOR rates included its credit facilities and swap agreement. The adoption of this standard did not have a material impact to the Company’s Condensed Consolidated Financial Statements.

10

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

3. REVENUES

The Company enters into contracts with its clients that contain various types of pricing provisions, including fixed price, time-and-materials, and unit-based provisions. The Company recognizes revenues in accordance with ASU 2014-09, Revenue from Contracts with Customer, codified as ASC Topic 606 and the related amendments (collectively “ASC 606”). As such, the Company identifies a contract with a customer, identifies the performance obligations in the contract, determines the transaction price, allocates the transaction price to each performance obligation in the contract and recognizes revenues when (or as) the Company satisfies a performance obligation.

The following table reflects the Company’s two reportable segments and the types of contracts that each most commonly enters into for revenue generating activities.

Segment

Contract Type

Revenue Recognition Method

Time-and-materials

Time-and-materials

Energy

Unit-based

Unit-based

Software license

Unit-based

Fixed price

Percentage-of-completion

Time-and-materials

Time-and-materials

Engineering and Consulting

Unit-based

Unit-based

Fixed price

Percentage-of-completion

Revenue on the vast majority of the Company’s contracts is recognized over time because of the continuous transfer of control to the customer. Revenue on fixed price contracts is recognized on the percentage-of-completion method based generally on the ratio of direct costs incurred-to-date to estimated total direct costs at completion. The Company uses the percentage-of-completion method to better match the level of work performed at a certain point in time in relation to the effort that will be required to complete a project. In addition, the percentage-of-completion method is a common method of revenue recognition in the Company’s industry.

Many of the Company’s fixed price contracts involve a high degree of subcontracted fixed price effort and are relatively short in duration, thereby lowering the risks of not properly estimating the percent complete. Revenue on time-and-materials and unit-based contracts is recognized as the work is performed in accordance with the specific rates and terms of the contract. The Company recognizes revenues for time-and-materials contracts based upon the actual hours incurred during a reporting period at contractually agreed upon rates per hour and also includes in revenue all reimbursable costs incurred during a reporting period. Certain of the Company’s time-and-materials contracts are subject to maximum contract values and, accordingly, when revenue is expected to exceed the maximum contract value, these contracts are generally recognized under the percentage-of-completion method, consistent with fixed price contracts. For unit-based contracts, the Company recognizes the contract price of units of a basic production product as revenue when the production product is delivered during a period. Revenue for amounts that have been billed but not earned is deferred, and such deferred revenue is referred to as contract liabilities in the accompanying condensed consolidated balance sheets. The Company also derives revenue from software licenses and professional services and maintenance fees. In accordance with ASC 606, the Company performs an assessment of each contract to identify the performance obligations, determine the overall transaction price for the contract, allocate the transaction price to the performance obligations, and recognize the revenue when the performance obligations are satisfied. The Company utilizes the residual approach by which it estimates the standalone selling price by reference to the total transaction price less the sum of the observable standalone selling prices of other goods or services promised in the contract. The software license revenue is typically recognized at a point in time when control is transferred to the client, which is defined as the point in time when the client can use and benefit from the license. The software license is delivered before related services are provided and is functional without services, updates, or technical support. Related professional services include training and support services in which the standalone selling price is determined based on an input measure of hours incurred to total estimated hours and is recognized over time, usually which is the life of the contract.

11

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

To determine the proper revenue recognition method for contracts, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined contract should be accounted for as one performance obligation. With respect to the Company’s contracts, it is rare that multiple contracts should be combined into a single performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or separate a single contract into multiple performance obligations could change the amount of revenue and profit recorded in a given period. Contracts are considered to have a single performance obligation if the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts, which is mainly because the Company provides a significant service of integrating a complex set of tasks and components into a single project or capability.

The Company may enter into contracts that include separate phases or elements. If each phase or element is negotiated separately based on the technical resources required and/or the supply and demand for the services being provided, the Company evaluates if the contracts should be segmented. If certain criteria are met, the contracts would be segmented which could result in revenues being assigned to the different elements or phases with different rates of profitability based on the relative value of each element or phase to the estimated total contract revenue. Segmented contracts may comprise up to approximately 2.0% to 3.0% of the Company’s consolidated contract revenue.

Contracts that cover multiple phases or elements of the project or service lifecycle (development, construction and maintenance and support) may be considered to have multiple performance obligations even when they are part of a single contract. For contracts with multiple performance obligations, the Company allocates the transaction price to each performance obligation using the best estimate of the standalone selling price of each distinct good or service in the contract. For the periods presented, the value of the separate performance obligations under contracts with multiple performance obligations (generally measurement and verification tasks under certain energy performance contracts) were not material. In cases where the Company does not provide the distinct good or service on a standalone basis, the primary method used to estimate standalone selling price is the expected cost plus a margin approach, under which the Company forecasts the Company’s expected costs of satisfying a performance obligation and then adds an appropriate margin for the distinct good or service.

The Company provides quality of workmanship warranties to customers that are included in the sale and are not priced or sold separately or do not provide customers with a service in addition to assurance of compliance with agreed-upon specifications and industry standards. The Company does not consider these types of warranties to be separate performance obligations.

In some cases, the Company has a master service or blanket agreement with a customer under which each task order releases the Company to perform specific portions of the overall scope in the service contract. Each task order is typically accounted for as a separate contract because the task order establishes the enforceable rights and obligations, and payment terms.

Under ASC 606, variable consideration should be considered when determining the transaction price and estimates should be made for the variable consideration component of the transaction price, as well as assessing whether an estimate of variable consideration is constrained. For certain of the Company’s contracts, variable consideration can arise from modifications to the scope of services resulting from unapproved change orders or customer claims. Variable consideration is included in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. The Company estimates of variable consideration and determination of whether to include estimated amounts in the transaction price are based largely on assessments of legal enforceability, the Company’s performance, and all information (historical, current and forecasted) that is reasonably available to the Company.

12

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

Due to the nature of the work required to be performed on many of the Company’s performance obligations, the estimation of total revenue and cost at completion is complex, subject to many variables and requires significant judgment. As a significant change in one or more of these estimates could affect the profitability of the Company’s contracts, the Company reviews and updates the Company’s contract-related estimates regularly through a company-wide disciplined project review process in which management reviews the progress and execution of the Company’s performance obligations and the estimate at completion (“EAC”). As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule and the related changes in estimates of revenues and costs. Management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the cost and availability of materials, the performance of subcontractors, and the availability and timing of funding from the customer, among other variables.

The Company recognizes adjustments in estimated profit on contracts under the cumulative catch-up method. Under this method, the impact of the adjustment on profit recorded to date is recognized in the period the adjustment is identified. Revenue and profit in future periods of contract performance is recognized using the adjusted estimate. If at any time the estimate of contract profitability indicates an anticipated loss on the contract, the Company recognizes the full amount of estimated loss in the period it is identified.

Contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new rights or obligations or changes the existing enforceable rights or obligations. Most of the Company’s contract modifications are for goods or services that are not distinct from existing contracts due to the significant integration provided in the context of the contract and are accounted for as if they were part of the original contract. The effect of a contract modification that is not distinct from the existing contract on the transaction price and the Company’s measure of progress for the performance obligation to which it relates is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis.

For contract modifications that result in the promise to deliver goods or services that are distinct from the existing contract and the increase in price of the contract is for the same amount as the standalone selling price of the additional goods or services included in the modification, the Company accounts for such contract modifications as a separate contract.

The Company includes claims to vendors, subcontractors and others as a receivable and a reduction in recognized costs when enforceability of the claim is established by the contract and the amounts are reasonably estimable and probable of being recovered. The amounts are recorded up to the extent of the lesser of the amounts management expects to recover or to costs incurred.

Billing practices are governed by the contract terms of each project based upon costs incurred, achievement of milestones or pre-agreed schedules. Billings do not necessarily correlate with revenue recognized using the percentage-of-completion method of revenue recognition.

Direct costs of contract revenue consist primarily of that portion of technical and nontechnical salaries and wages that has been incurred in connection with revenue producing projects. Direct costs of contract revenue also include production expenses, subcontractor services and other expenses that are incurred in connection with revenue producing projects.

13

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

Direct costs of contract revenue exclude that portion of technical and nontechnical salaries and wages related to marketing efforts, vacations, holidays and other time not spent directly generating revenue under existing contracts. Such costs are included in general and administrative expenses. Additionally, payroll taxes, bonuses and employee benefit costs for all Company personnel are included in general and administrative expenses in the accompanying consolidated statements of comprehensive income since no allocation of these costs is made to direct costs of contract revenue. No allocation of facilities costs is made to direct costs of contract revenue. Other companies may classify as direct costs of contract revenue some of the costs that the Company classifies as general and administrative costs. The Company expenses direct costs of contract revenue when incurred.

Included in revenue and costs are all reimbursable costs for which the Company has the risk or on which the fee was based at the time of bid or negotiation. No revenue or cost is recorded for costs in which the Company acts solely in the capacity of an agent and has no risks associated with such costs.

Accounts receivable are carried at original invoice amount less an estimate made for doubtful accounts based upon a review of all outstanding amounts on a quarterly basis. Management determines allowances for doubtful accounts through specific identification of amounts considered to be uncollectible and potential write-offs, plus a non-specific allowance for other amounts for which some potential loss has been determined to be probable based on current and past experience. The Company’s historical credit losses have been minimal with governmental entities and large public utilities, but disputes may arise related to these receivable amounts. Accounts receivable are written off when deemed uncollectible. Recoveries of accounts receivable previously written off are recorded when received.

Retainage, included in contract assets, represents amounts withheld from billings to the Company’s clients pursuant to provisions in the contracts and may not be paid to the Company until specific tasks are completed or the project is completed and, in some instances, for even longer periods. As of September 30, 2022 and December 31, 2021, contract assets included retainage of approximately $7.7 million and $4.5 million, respectively.

14

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

4. SUPPLEMENTAL FINANCIAL STATEMENT DATA

Accounts Receivable

From time to time, in connection with factoring agreements, the Company sells trade accounts receivable without recourse to third party purchasers in exchange for cash. During the nine months ended September 30, 2022, the Company did not sell any trade accounts receivable. During the nine months ended October 1, 2021, the Company sold trade accounts receivable and received cash proceeds of $8.0 million. The discounts on the trade accounts receivable sold were $0.8 million and were recorded within “Other, net” in other income (expense) in the condensed consolidated financial statements.

Equipment and Leasehold Improvements

September 30,

December 31,

    

2022

    

2021

(in thousands)

Furniture and fixtures

$

4,065

$

4,070

Computer hardware and software

 

33,085

 

26,425

Leasehold improvements

 

3,083

 

3,011

Equipment under finance leases

 

5,204

 

3,286

Automobiles, trucks, and field equipment

 

3,102

 

3,099

Subtotal

 

48,539

 

39,891

Accumulated depreciation and amortization

 

(27,392)

 

(23,134)

Equipment and leasehold improvements, net

$

21,147

$

16,757

Included in accumulated depreciation and amortization is $0.8 million and $0.6 million of amortization expense related to equipment held under finance leases for the nine months ended September 30, 2022 and for fiscal year 2021, respectively.

Accrued Liabilities

September 30,

December 31,

    

2022

    

2021

(in thousands)

Accrued subcontractor costs

$

34,624

$

19,727

Other

 

5,013

 

2,750

Compensation and payroll taxes

 

3,676

 

2,244

Accrued bonuses

3,606

7,767

Employee withholdings

 

3,396

 

2,665

Accrued workers’ compensation insurance

 

681

 

527

Total accrued liabilities

$

50,996

$

35,680

15

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

Goodwill

December 31,

Additional

Additions /

September 30,

    

2021

    

Purchase Cost

    

Adjustments

    

2022

(in thousands)

Reporting Unit:

Energy

$

129,375

$

$

$

129,375

Engineering and Consulting

749

749

$

130,124

$

$

$

130,124

The Company tests for impairment, at a minimum, on an annual basis or earlier when certain events or changes in circumstances indicate that goodwill may more likely than not be impaired. During the quarter ended September 30, 2022, although the Company experienced declines in the market price of its stock, such decreases did not result in the Company’s market capitalization decreasing below book value. Subsequent to the end of the quarter, the Company’s market capitalization based upon its stock price has fluctuated below book value. The fair value of the Company using a market capitalization approach based on the Company’s share price would also include a control premium not reflected in the current share price based on recent transactions that have occurred in the Company’s industry. This indicative fair value exceeded the Company’s book value; therefore, the Company does not believe it is more likely than not that goodwill was impaired as of September 30, 2022.

If there are further decreases in the Company’s stock price for a sustained period or other unfavorable factors, the Company may be required to perform a goodwill impairment assessment, which may result in a recognition of goodwill impairment that could be material to the consolidated financial statements.

Intangible Assets

September 30, 2022

December 31, 2021

Gross

Accumulated

Gross

Accumulated

Amortization

    

Amount

    

Amortization

    

Amount

    

Amortization

    

Period

(in thousands)

(in years)

Finite:

Backlog

$

7,944

$

7,872

$

7,944

$

7,222

1.0

Tradename

 

15,911

 

10,492

 

15,911

 

8,997

 

2.5

-

6.0

Non-compete agreements

1,420

1,420

1,420

1,413

4.0

-

5.0

Developed technology

15,810

11,141

15,500

8,950

8.0

Customer relationships

58,149

24,127

58,149

19,939

5.0

-

8.0

Total finite intangible assets

99,234

55,052

98,924

46,521

In-process research and technology (1)

310

Total intangible assets

$

99,234

$

55,052

$

99,234

$

46,521

(1)In-process research and technology will not be amortized until put into use.

During the nine months ended September 30, 2022, the Company reclassified $0.3 million of in-process research and technology to developed technology and commenced amortization over its estimated useful life.

16

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

5. DERIVATIVE FINANCIAL INSTRUMENTS

From time to time, the Company uses certain interest rate derivative contracts to hedge interest rate exposures on its variable rate debt. The Company’s hedging program is not designated for trading or speculative purposes.

The Company recognizes derivative instruments as either assets or liabilities on the accompanying consolidated balance sheets at fair value. The Company records changes in the fair value (i.e., gains or losses) of the derivatives that have been designated as cash flow hedges in its consolidated balance sheets as accumulated other comprehensive income (loss) and in its condensed consolidated statements of comprehensive (loss) income as a loss or gain on cash flow hedge valuation.

On January 31, 2019, the Company entered into an interest rate swap agreement that the Company designated as cash flow hedge to fix the variable interest rate on a portion of the Company’s Term A Loan (as defined below in Note 6. “Debt Obligations”). The interest rate swap agreement had total notional amount of $35.0 million and had a fixed annual interest rate of 2.47%. The interest rate swap expired on January 31, 2022.

At its expiration, changes in the fair value of the Company’s interest rate swap agreement were immaterial to the Company’s condensed consolidated financial statements and were included in accrued liabilities in the condensed consolidated balance sheet.

At its expiration, the effective portion of the Company’s interest rate swap agreement designated as a cash flow hedge was immaterial to the Company’s condensed consolidated financial statements, and all amounts were reclassified from accumulated other comprehensive income to interest expense.

As of September 30, 2022, the Company had no derivative financial instruments in place.

17

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

6. DEBT OBLIGATIONS

Debt obligations, excluding obligations under finance leases (see Note 7, Leases, below), consisted of the following:

    

September 30,

    

December 31,

2022

2021

(in thousands)

Outstanding borrowings on Term A Loan

$

67,500

$

75,000

Outstanding borrowings on Revolving Credit Facility

Outstanding borrowings on Delayed Draw Term Loan

41,750

24,000

Other debt agreements

583

2,161

Total debt

109,833

101,161

Issuance costs and debt discounts

(411)

(587)

Subtotal

109,422

100,574

Less current portion of long-term debt

 

15,510

 

15,036

Long-term debt portion

$

93,912

$

85,538

Credit Facilities

On June 26, 2019, the Company and certain of its subsidiaries entered into an Amended and Restated Credit Agreement (as amended by the First Amendment, dated as of August 15, 2019, the Second Amendment, dated as of November 6, 2019, the Third Amendment, dated as of May 6, 2020, the Fourth Amendment, dated April 30, 2021, and the Fifth Amendment, dated March 8, 2022, the “Credit Agreement”) with a syndicate of financial institutions as lenders and BMO Harris Bank, N.A. (“BMO”), as administrative agent. The Credit Agreement provides for (i) a $100.0 million secured term loan (the “Term A Loan”), (ii) up to $50.0 million in delayed draw secured term loans (the “Delayed Draw Term Loan”), and (iii) a $50.0 million secured revolving credit facility (the “Revolving Credit Facility” and, collectively with the Term A Loan and the Delayed Draw Term Loan, the “Credit Facilities”), each maturing on June 26, 2024. The Company’s obligations under the Credit Agreement are guaranteed by its present and future domestic subsidiaries, with limited exceptions.

Prior to the Fourth Amendment to the Credit Agreement, dated as of April 30, 2021 (the “Fourth Amendment”), the Credit Agreement required the Company to comply with certain financial covenants, including requiring that the Company maintain a (i) total leverage ratio (the “Leverage Ratio”), defined as the ratio of total funded debt to Adjusted EBITDA (as defined in the Credit Agreement), of 6.00 to 1.00 through June 26, 2020, 7.75 to 1.00 through September 25, 2020, 7.50 to 1.00 through January 1, 2021, 6.25 to 1.00 through April 2, 2021, 4.00 to 1.00 through July 2, 2021, and 3.25 to 1.00 through October 1, 2021 and thereafter and (ii) fixed charge coverage ratio (“FCCR Ratio”), defined as the ratio of Adjusted EBITDA less Unfinanced Capital Expenditures (as defined in the Credit Agreement) to Fixed Charges (as defined in the Credit Agreement), of not less than 1.20 to 1.00, in each case tested quarterly, except during the period from May 6, 2020 until July 2, 2021 (the “Initial Covenant Relief Period”), when the maximum Leverage Ratio was increased and the covenant to maintain a minimum FCCR Ratio was replaced with a covenant to maintain a minimum Adjusted EBITDA (as defined in the Third Amendment). In addition, during the Initial Covenant Relief Period, no delayed draw term loans could be borrowed under the Credit Facilities and the Company was prohibited from engaging in share repurchases or making any Permitted Acquisitions (as defined in the Credit Agreement). Additionally, during the Initial Covenant Relief Period, the aggregate amount of all capital expenditures made by the Company could not exceed $7.0 million, and the Company was prohibited from making any earn-out payments if, after giving effect to such earn-out payment, the Company’s liquidity would be less than $5.0 million or the aggregate amount of all earn-out payments made by the Company during the Initial Covenant Relief Period would exceed $7.0 million.

18

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

Pursuant to the Fourth Amendment, the Initial Covenant Relief Period was extended from July 2, 2021 to and including the earlier of (i) April 1, 2022 and (ii) the last day of the fiscal quarter in which the Company delivers an irrevocable election to terminate the covenant relief granted by the Fourth Amendment (the “Second Covenant Relief Period,” and together with the Initial Covenant Relief Period, the “Amended Covenant Relief Period”). The Fourth Amendment also (A) increased the maximum Leverage Ratio the Company was permitted to maintain to 4.50 to 1.00 through June 30, 2021, 5.25 to 1.00 through September 30, 2021, 4.50 to 1.00 through December 31, 2021, 4.25 to 1.00 through March 31, 2022, and 3.25 to 1.00 through June 30, 2022 and thereafter, (B) established the minimum Adjusted EBITDA thresholds (as defined in the Third Amendment) for the remainder of the Amended Covenant Relief Period, (C) removed the previous prohibition during the Initial Covenant Relief Period on the Company’s ability to make delayed draw term loan borrowings, (D) removed the previous prohibition during the Initial Covenant Relief Period on the Company’s ability to make Permitted Acquisitions (as defined in the Credit Agreement) and to purchase, redeem or otherwise acquire the Company’s common stock, in each case, subject to certain conditions, and (E) increased the maximum amount of earn-out payments the Company was permitted to make during the Amended Covenant Relief Period from $7.0 million to $17.0 million, provided that the Company’s liquidity would not be less than $10.0 million after giving effect to such earn-out payment. Additionally, during the remainder of the Amended Covenant Relief Period, the aggregate amount of all capital expenditures made by the Company may not exceed $15.0 million.

In accordance with the Fourth Amendment, borrowings under the Credit Agreement bore interest at all times other than during the Initial Covenant Relief Period, at either a Base Rate or London Inter-Bank Offered Rate (“LIBOR”), each as defined in the Credit Agreement, at the Company’s option, and in each case plus an applicable margin, which applicable margin ranged from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to LIBOR borrowings, depending on the Leverage Ratio; provided, that LIBOR could not be less than 0.00%. The Company also agreed to pay a commitment fee for the unused portion of the Revolving Credit Facility and the delayed draft term loan facility, which ranged from 0.15% to 0.40% per annum depending on the Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the Revolving Credit Facility, which ranged from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Leverage Ratio.

The Credit Agreement includes customary events of default and also contains other customary restrictive covenants including (i) restrictions on the incurrence of additional indebtedness and additional liens on property, (ii) restrictions on permitted acquisitions and other investments and (iii) limitations on asset sales, mergers and acquisitions. Further, the Credit Agreement limits the Company’s payment of future dividends and distributions and share repurchases by the Company. Subject to certain exceptions, borrowings under the Credit Agreement are also subject to mandatory prepayment from (a) any issuances of debt or equity securities, (b) any sale or disposition of assets, (c) insurance and condemnation proceeds (d) representation and warranty insurance proceeds related to insurance policies issued in connection with acquisitions and (e) excess cash flow.

Fifth Amendment to the Credit Agreement

On March 8, 2022, the Company entered into the Fifth Amendment to the Credit Agreement (the “Fifth Amendment”). The Fifth Amendment extended the Amended Covenant Relief Period from March 31, 2022 to and including the earlier of (i) December 30, 2022 and (ii) the last day of the fiscal quarter in which the Company delivers an irrevocable election to terminate the covenant relief granted by the Fifth Amendment (the “Third Covenant Relief Period,” and together with the Amended Covenant Relief Period, the “Extended Covenant Relief Period”).

The Fifth Amendment also (A) amended the minimum Adjusted EBITDA (as defined in the Fifth Amendment) thresholds for the remainder of the Extended Covenant Relief Period, (B) increased the maximum Total Leverage Ratio (as defined in the Credit Agreement) the Company is permitted to maintain through the fiscal quarter ending on December 31, 2022, (C) funded to the Company, on the date of closing, the remaining $20.0 million in available funds from the Delayed Draw Term Loan, and (D) amended the pricing structure of borrowings under the Credit Agreement

19

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

from utilizing as a reference rate the LIBOR to utilizing the Secured Overnight Financing Rate (“SOFR”). Additionally, during the remainder of the Covenant Relief Period, the aggregate amount of all capital expenditures made by the Company may not exceed $20.0 million.

 

Pursuant to the Fifth Amendment, during the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.50% with respect to Base Rate borrowings and 1.125% to 2.50% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.45% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.875% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio.

After the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.40% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio.

Sixth Amendment to the Credit Agreement

On August 2, 2022, the Company entered into the Sixth Amendment to the Credit Agreement (the “Sixth Amendment”). The Sixth Amendment increased the purchase money indebtedness and Capitalized Lease Obligations (as defined in the Credit Agreement) permissible limit from $1.5 million to $4.0 million, with no other changes to the Credit Agreement.

As of September 30, 2022, the Company was in compliance with all covenants contained in the Credit Agreement, as amended, other than the minimum Adjusted EBITDA thresholds for the test period ended September 30, 2022. Such non-compliance with the minimum Adjusted EBITDA thresholds for the test period ended September 30, 2022 was subsequently waived by the lenders under the Credit Agreement pursuant to the Seventh Amendment (defined and described in Note 13. “Subsequent Events” below).

Other Debt Agreements

The Company’s other debt agreements are related to financed insurance premiums, a financed software agreement, and a utility customer agreement and are immaterial to the Company’s Condensed Consolidated Financial Statements.

20

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

7. LEASES

The Company leases certain office facilities under long-term, non-cancellable operating leases that expire at various dates through the year 2027. In addition, the Company is obligated under finance leases for certain furniture and office equipment that expire at various dates through the year 2027.

From time to time, the Company enters into non-cancelable leases for some of its facility and equipment needs. These leases allow the Company to conserve cash by paying a monthly lease rental fee for the use of facilities and equipment rather than purchasing them. The Company’s leases have terms ranging from one to eight years, some of which may include options to extend the leases for up to five years, and some of which may include options to terminate the leases within one year. Currently, all of the Company’s leases contain fixed payment terms. The Company may decide to cancel or terminate a lease before the end of its term, in which case the Company is typically liable to the lessor for the remaining lease payments under the term of the lease. Additionally, all of the Company’s month-to-month leases are cancelable by the Company or the lessor, at any time, and are not included in the Company’s right-of-use asset or lease liability. As of September 30, 2022, the Company had no leases with residual value guarantees. Typically, the Company has purchase options on the equipment underlying its long-term leases. The Company may exercise some of these purchase options when the need for equipment is on-going and the purchase option price is attractive. Nonperformance-related default covenants, cross-default provisions, subjective default provisions and material adverse change clauses contained in material lease agreements, if any, are also evaluated to determine whether those clauses affect lease classification in accordance with “ASC” Topic 842-10-25. Leases are accounted for as operating or financing leases, depending on the terms of the lease.

Financing Leases

The Company leases certain equipment under financing leases. The economic substance of the leases is a financing transaction for acquisition of equipment and leasehold improvements. Accordingly, the right-of-use assets for these leases are included in the balance sheets in equipment and leasehold improvements, net of accumulated depreciation, with a corresponding amount recorded in current portion of financing lease obligations or noncurrent portion of financing lease obligations, as appropriate. The financing lease assets are amortized over the life of the lease or, if shorter, the life of the leased asset, on a straight-line basis and included in depreciation expense. The interest associated with financing lease obligations is included in interest expense.

 

Right-of-use assets

Operating leases are included in right-of-use assets, and current portion of lease liability and noncurrent portion of lease liability, as appropriate. Right-of-use assets and lease liabilities are recognized based on the present value of the future minimum lease payments over the lease term at commencement date. As most of the Company’s leases do not provide an implicit rate to calculate present value, the Company determines this rate by estimating the Company’s incremental borrowing rate at the lease commencement date. The right-of-use asset also includes any lease payments made and initial direct costs incurred at lease commencement and excludes lease incentives. The Company’s lease terms may include options to extend or terminate the lease when it is reasonably certain that it will exercise that option. Lease expense for minimum lease payments is recognized on a straight-line basis over the lease term.

21

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

The following is a summary of the Company’s lease expense:

Three Months Ended

Nine Months Ended

September 30,

October 1,

September 30,

October 1,

2022

    

2021

    

2022

    

2021

(in thousands)

(in thousands)

Operating lease cost

$

1,523

$

1,596

$

4,635

$

4,941

Finance lease cost:

Amortization of assets

311

139

799

397

Interest on lease liabilities

22

9

51

22

Total net lease cost

$

1,856

$

1,744

$

5,485

$

5,360

The following is a summary of lease information presented on the Company’s consolidated balance sheet:

September 30,

    

December 31,

2022

2021

(in thousands)

Operating leases:

Right-of-use assets

$

12,715

$

15,177

 

 

Lease liability

$

4,889

$

5,575

Lease liability, less current portion

 

8,747

 

10,768

Total lease liabilities

$

13,636

$

16,343

 

 

Finance leases (included in equipment and leasehold improvements, net):

Equipment and leasehold improvements, net

$

5,204

$

3,286

Accumulated depreciation

 

(2,524)

 

(1,947)

Total equipment and leasehold improvements, net

$

2,680

$

1,339

 

Finance lease obligations

$

970

$

539

Finance lease obligations, less current portion

1,657

778

Total finance lease obligations

$

2,627

$

1,317

Weighted average remaining lease term (in years):

Operating Leases

3.48

3.79

Finance Leases

2.70

2.62

Weighted average discount rate:

Operating Leases

4.16

%

4.28

%

Finance Leases

3.08

%

2.78

%

Rent expense was $1.6 million and $4.9 million for the three and nine months ended September 30, 2022, respectively, as compared to $1.6 million and $5.2 million for the three and nine months ended October 1, 2021, respectively.

22

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

The following is a summary of other information and supplemental cash flow information related to finance and operating leases:

Nine Months Ended

September 30,

October 1,

2022

    

2021

(in thousands)

Cash paid for amounts included in the measurement of lease liabilities:

Operating cash flow from operating leases

$

4,879

$

5,115

Operating cash flow from finance leases

51

22

Financing cash flow from finance leases

827

440

Right-of-use assets obtained in exchange for lease liabilities:

Operating leases

$

1,706

$

326

The following is a summary of the maturities of lease liabilities as of September 30, 2022:

    

Operating

    

Finance

 

(in thousands)

Fiscal year:

Remainder of 2022

$

1,542

$

228

2023

 

4,765

 

1,161

2024

 

3,313

887

2025

2,493

303

2026

2,140

 

134

2027 and thereafter

 

453

 

30

Total lease payments

14,706

2,743

Less: Imputed interest

 

(1,070)

(116)

Total lease obligations

 

13,636

2,627

Less: Current obligations

 

4,889

970

Noncurrent lease obligations

$

8,747

$

1,657

The imputed interest for finance lease obligations represents the interest component of finance leases that will be recognized as interest expense in future periods. The financing component for operating lease obligations represents the effect of discounting the operating lease payments to their present value.

23

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

8. COMMITMENTS AND VARIABLE INTEREST ENTITIES

Employee Benefit Plans

The Company has a qualified profit sharing plan pursuant to Code Section 401(a) and qualified cash or deferred arrangement pursuant to Code Section 401(k) covering all employees. Company contributions are made solely at the discretion of the Company’s board of directors.

The Company’s defined contribution plan (the “Plan”) covers employees who have completed three months of service and who have attained 21 years of age. Employees may elect to contribute up to 50% of their compensation limited to the amount allowed by tax laws. The Company elects to make matching contributions equal to 50% of the participants’ contributions to the Plan, up to 6% of the individual participant’s compensation, and subject to a maximum of $3,000 per employee. Under the Plan, the Company’s matching contributions to employee accounts are discretionary.

During the nine months ended September 30, 2022 and October 1, 2021, the Company made matching contributions of $2.0 million and $1.6 million, respectively.

Variable Interest Entities

On March 4, 2016, the Company and the Company’s wholly-owned subsidiary, WES, acquired substantially all of the assets of Genesys and assumed certain specified liabilities of Genesys (collectively, the “Purchase”) pursuant to an Asset Purchase and Merger Agreement, dated as of February 26, 2016 (the “Agreement”), by and among Willdan Group, Inc., WES, WESGEN (as defined below), Genesys and Ronald W. Mineo (“Mineo”) and Robert J. Braun (“Braun” and, together with Mineo, the “Genesys Shareholders”). On March 5, 2016, pursuant to the terms of the Agreement, WESGEN, Inc., a non-affiliated corporation (“WESGEN”), merged (the “Merger” and, together with the Purchase, the “Acquisition”) with Genesys, with Genesys remaining as the surviving corporation. Genesys was acquired to strengthen the Company’s power engineering capability in the northeastern U.S., and also to increase client exposure and experience with universities.

Genesys continues to be a professional corporation organized under the laws of the State of New York, wholly-owned by one or more licensed engineers. Pursuant to New York law, the Company does not own capital stock of Genesys. The Company has entered into an agreement with the Shareholder of Genesys pursuant to which the Shareholder will be prohibited from selling, transferring or encumbering the Shareholder’s ownership interest in Genesys without the Company’s consent. Notwithstanding the Company’s rights regarding the transfer of Genesys’s stock, the Company does not have control over the professional decision making of Genesys’s engineering services. The Company has entered into an administrative services agreement with Genesys pursuant to which WES will provide Genesys with ongoing administrative, operational and other non-professional support services. Genesys pays WES a service fee, which consists of all of the costs incurred by WES to provide the administrative services to Genesys plus ten percent of such costs, as well as any other costs that relate to professional service supplies and personnel costs. As a result of the administrative services agreement, the Company absorbs the expected losses of Genesys through its deferral of Genesys’s service fees owed to WES.

24

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

The Company manages Genesys and has the power to direct the activities that most significantly impact Genesys’s performance, in addition to being obligated to absorb expected losses from Genesys. Accordingly, the Company is the primary beneficiary of Genesys and consolidates Genesys as a VIE. In addition, the Company concluded there is no noncontrolling interest related to the consolidation of Genesys because the Company determined that (i) the shareholder of Genesys does not have more than a nominal amount of equity investment at risk, (ii) WES absorbs the expected losses of Genesys through its deferral of Genesys’s service fees owed to WES and the Company has, since entering into the administrative services agreement, had to continuously defer service fees for Genesys, and (iii) the Company believes Genesys will continue to have a shortfall on payment of its service fees for the foreseeable future, leaving no expected residual returns for the shareholder. As of September 30, 2022, the Company had one VIE — Genesys.

25

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

9. SEGMENT AND GEOGRAPHICAL INFORMATION

Segment Information

The Company’s two segments are Energy and Engineering and Consulting, and the Company’s chief operating decision maker, which continues to be its chief executive officer, receives and reviews financial information in this format.

There were no intersegment sales during the three and nine months ended September 30, 2022 and October 1, 2021. The Company’s chief operating decision maker evaluates the performance of each segment based upon income or loss from operations before income taxes. Certain segment asset information including expenditures for long-lived assets has not been presented as it is not reported to or reviewed by the chief operating decision maker. In addition, enterprise-wide service line contract revenue is not included as it is impracticable to report this information for each group of similar services.

Financial information with respect to the reportable segments is as follows:

Engineering

Unallocated

Consolidated

    

Energy

    

& Consulting

    

Corporate

    

Intersegment

    

Total

(in thousands)

Fiscal Three Months Ended September 30, 2022

Contract revenue

$

102,625

$

18,774

$

-

$

-

$

121,399

Depreciation and amortization

4,166

239

-

-

4,405

Interest expense, net

3

-

1,432

-

1,435

Segment profit (loss) before income tax expense

(1,815)

3,473

(3,108)

-

(1,450)

Income tax expense (benefit)

(1,565)

1,781

(1,742)

-

(1,526)

Net income (loss)

(250)

1,692

(1,366)

-

76

Segment assets (1)

336,036

22,630

59,575

(23,130)

395,111

Fiscal Three Months Ended October 1, 2021

Contract revenue

$

81,523

$

16,774

$

-

$

-

$

98,297

Depreciation and amortization

4,023

244

-

-

4,267

Interest expense, net

-

-

937

-

937

Segment profit (loss) before income tax expense

2,138

2,673

(4,207)

-

604

Income tax expense (benefit)

610

1,286

(2,132)

-

(236)

Net income (loss)

1,529

1,387

(2,076)

-

840

Segment assets (1)

331,573

23,134

55,329

(23,130)

386,906

Fiscal Nine Months Ended September 30, 2022

Contract revenue

$

262,186

$

53,696

$

-

$

-

$

315,882

Depreciation and amortization

12,506

734

-

-

13,240

Interest expense, net

8

-

3,208

-

3,216

Segment profit (loss) before income tax expense

(12,525)

8,111

(9,197)

-

(13,611)

Income tax expense (benefit)

(5,143)

3,330

(3,775)

-

(5,588)

Net income (loss)

(7,382)

4,780

(5,421)

-

(8,023)

Segment assets (1)

336,036

22,630

59,575

(23,130)

395,111

Fiscal Nine Months Ended October 1, 2021

Contract revenue

$

209,977

$

51,560

$

-

$

-

$

261,537

Depreciation and amortization

11,934

744

-

-

12,678

Interest expense, net

5

-

3,095

-

3,100

Segment profit (loss) before income tax expense

(5,607)

7,507

(14,784)

-

(12,884)

Income tax expense (benefit)

(2,331)

3,122

(6,148)

-

(5,357)

Net income (loss)

(3,275)

4,386

(8,638)

-

(7,527)

Segment assets (1)

331,573

23,134

55,329

(23,130)

386,906

(1)Segment assets are presented net of intercompany receivables.

26

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

The following tables provide information about disaggregated revenue by contract type, client type and geographical region:

    

Three months ended September 30, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

7,468

$

13,880

$

21,348

Unit-based

43,039

3,791

46,830

Fixed price

52,118

1,103

53,221

Total (1)

$

102,625

$

18,774

$

121,399

Client Type

Commercial

$

6,848

$

1,376

$

8,224

Government

48,073

17,348

65,421

Utilities (2)

47,704

50

47,754

Total (1)

$

102,625

$

18,774

$

121,399

Geography (3)

Domestic

$

102,625

$

18,774

$

121,399

    

Nine months ended September 30, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

23,873

$

40,221

$

64,094

Unit-based

128,540

10,530

139,070

Fixed price

109,773

2,945

112,718

Total (1)

$

262,186

$

53,696

$

315,882

Client Type

Commercial

$

21,638

$

4,330

$

25,968

Government

96,293

49,139

145,432

Utilities (2)

144,255

227

144,482

Total (1)

$

262,186

$

53,696

$

315,882

Geography (3)

Domestic

$

262,186

$

53,696

$

315,882

27

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

    

Three months ended October 1, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

9,104

$

13,160

$

22,264

Unit-based

51,470

2,650

54,120

Fixed price

20,950

963

21,913

Total (1)

$

81,524

$

16,773

$

98,297

Client Type

Commercial

$

7,741

$

1,568

$

9,309

Government

18,537

15,181

33,718

Utilities (2)

55,245

24

55,269

Total (1)

$

81,524

$

16,773

$

98,297

Geography (3)

Domestic

$

81,524

$

16,773

$

98,297

    

Nine months ended October 1, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

25,060

$

40,444

$

65,504

Unit-based

132,688

7,817

140,505

Fixed price

52,229

3,299

55,528

Total (1)

$

209,977

$

51,560

$

261,537

Client Type

Commercial

$

20,685

$

4,037

$

24,723

Government

45,766

47,391

93,157

Utilities (2)

143,525

132

143,657

Total (1)

$

209,977

$

51,560

$

261,537

Geography (3)

Domestic

$

209,977

$

51,560

$

261,537

(1)Amounts may not add to the totals due to rounding.
(2)Includes the portion of revenue related to small business programs paid by the end user/customer.
(3)Revenue from the Company’s foreign operations were not material for the three and nine months ended September 30, 2022 and October 1, 2021.

Geographical Information

Substantially all of the Company’s consolidated revenue was derived from its operations in the U.S. The Company operates through a network of offices spread across 23 U.S. states, the District of Columbia, and Canada. Revenues from the Company’s Canadian operations were not material for the three and nine months ended September 30, 2022 nor for the three and nine months ended October 1, 2021.

Customer Concentration

For the three and nine months ended September 30, 2022, the Company’s top 10 customers accounted for 57.2%, and 54.5%, respectively, of the Company’s consolidated contract revenue. For the three and nine months ended October 1, 2021, the Company’s top 10 customers accounted for 52.4%, and 46.8%, respectively, of the Company’s consolidated contract revenue.

28

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

For the three months ended September 30, 2022, the Company had one customer, Pueblo County School District, that accounted for 13.3% of its consolidated contract revenues. For the nine months ended September 30, 2022, the Company had one customer, LADWP, that accounted for 13.2% of its consolidated contract revenues. For the three months ended October 1, 2021, the Company had one customer, LADWP, that accounted for 17.0% of its consolidated contract revenue. For the nine months ended October 1, 2021, the Company had no individual customer that accounted for more than 10% of its consolidated contract revenue. 

On a segment basis, the Company had individual customers that accounted for more than 10% of its segment contract revenues. For the three months ended September 30, 2022, the Company derived 38.3% of its Energy segment revenues from three customers, Pueblo County School District, The Dormitory Authority State of New York (“DASNY”) and LADWP. For the nine months ended September 30, 2022, the Company derived 26.5% of its Energy segment revenues from two customers, LADWP and Pueblo County School District. For the three months ended October 1, 2021, the Company derived 20.4% of its Energy segment revenues from one customer, LADWP. For the nine months ended October 1, 2021, the Company derived 21.5% of its Energy segment revenues from two customers, LADWP and Consolidated Edison of New York. For the three months and nine months ended September 30, 2022, and for the three months ended October 1, 2021, no single customer accounted for 10% or more of the Company’s Engineering and Consulting segment revenues. For the nine months ended October 1, 2021, the Company derived 12.2% of its Engineering and Consulting segment revenues from one customer, the City of Elk Grove.

On a geographical basis, the Company’s largest clients are based in California and New York. For the three and nine months ended September 30, 2022, services provided to clients in California accounted for 37.2% and 40.3%, respectively, of the Company’s contract revenue and services provided to clients in New York accounted for 23.4% and 21.4%, respectively, of the Company’s contract revenue. For the three and nine months ended October 1, 2021, services provided to clients in California accounted for 38.9% and 36.2%, respectively, of the Company’s consolidated contract revenue and services provided to clients in New York accounted for 19.0% and 20.7%, respectively, of the Company’s consolidated contract revenue. 

29

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

10. INCOME TAXES

Income taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for the future tax consequences of temporary differences between the financial reporting basis and tax basis of the Company’s assets and liabilities, subject to a judgmental assessment of the recoverability of deferred tax assets. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is recorded when it is more likely than not that some of the deferred tax assets may not be realized. Significant judgment is applied when assessing the need for valuation allowances and includes the evaluation of historical income (loss) adjusted for the effects of non-recurring items and the impact of recent business combinations. Areas of estimation include the Company’s consideration of future taxable income which is driven by verifiable signed contracts and ongoing prudent and feasible tax planning strategies. Should a change in circumstances lead to a change in judgment about the utilization of deferred tax assets in future years, the Company would adjust the related valuation allowances in the period that the change in circumstances occurs, along with a corresponding increase or charge to income.

During each fiscal year, the Company assesses the available positive and negative evidence to evaluate if it is more likely than not that the deferred tax assets will be realized. At the end of fiscal year 2018, the Company determined that it was more-likely-than-not that the entire California net operating loss will not be utilized prior to expiration. Significant pieces of objective evidence evaluated included the Company’s history of utilization of California net operating losses in prior years for each of its subsidiaries, as well as its forecasted amount of net operating loss utilization for certain members of the combined group. As a result, at that time, the Company recorded a valuation allowance in the amount of $86,000 related to California net operating losses. During fiscal year 2021, the Company determined that it was more-likely-than-not that the New Jersey net operating losses will not be utilized prior to expiration and, accordingly, recorded a valuation allowance of $1.1 million. Significant pieces of objective evidence evaluated included the Company’s proportional increase of revenue to other states resulting in a dilution of New Jersey sourced income as well as the Company’s forecasted amount of net operating loss utilization in New Jersey for certain members of the combined group. At the end of fiscal year 2021, the total valuation allowance was $1.2 million, compared to a balance of $86,000 for fiscal year 2020.

As of September 30, 2022, the Company assessed all available positive and negative evidence available to determine whether, based on the weight of that evidence, there was a change in judgment related to the utilization of deferred tax assets in future years. The Company concluded that as of September 30, 2022, the valuation allowance for the Company’s deferred tax assets was appropriate in accordance with ASC 740. Consequently, there was no change to the valuation allowance during the three and nine months ended September 30, 2022.

For acquired business entities, if the Company identifies changes to acquired deferred tax asset valuation allowances or liabilities related to uncertain tax positions during the measurement period and they relate to new information obtained about facts and circumstances that existed as of the acquisition date, those changes are considered a measurement period adjustment, and the Company records the offset to goodwill. The Company records all other changes to deferred tax asset valuation allowances and liabilities related to uncertain tax positions in current period income tax expense.

The Company recognizes the tax benefit from uncertain tax positions if it is more likely than not that the tax positions will be sustained on examination by the tax authorities, based on the technical merits of the position. The tax benefit is measured based on the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement. The Company recognizes interest and penalties related to unrecognized tax benefits in income tax expense. During the three and nine months ended September 30, 2022, the Company did not record a liability for uncertain tax positions.

30

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

Based on the Company’s estimates and determination of an effective tax rate for the year, the Company recorded an income tax benefit of $1.5 million and $5.6 million for the three and nine months ended September 30, 2022, respectively, as compared to an income tax benefit of $0.2 million and $5.4 million for the three and nine months ended October 1, 2021, respectively. During the three and nine months ended September 30, 2022, the difference between the effective tax rate and the federal statutory rate was primarily attributable to state taxes, non-deductible stock compensation, nondeductible executive compensation, research and development tax credits, and the commercial building energy efficiency deduction. During the three and nine months ended October 1, 2021, the difference between the effective tax rate and the federal statutory rate was primarily attributable to state taxes, excess tax benefit on stock compensation, nondeductible executive compensation, research and development tax credits, the commercial building energy efficiency deduction, and additional benefits provided by the Coronavirus Aid, Relief, and Economic Security (CARES) Act (H.R. 748).

On June 10, 2021, the Company received notice from the State of New York indicating that the Company’s 2017, 2018, and 2019 state tax returns were under examination. The examination was finalized during the Company’s first quarter of fiscal 2022 and there were no changes made by the State of New York to the state tax returns filed.

31

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

11. EARNINGS PER SHARE (“EPS”)

Basic EPS is computed by dividing net income available to common stockholders by the weighted-average number of common shares outstanding. Diluted EPS is computed by dividing net income by the weighted-average number of common shares outstanding and dilutive potential common shares for the period. Potential common shares include the weighted-average dilutive effects of outstanding stock options and restricted stock awards using the treasury stock method.

The following table sets forth the number of weighted-average common shares outstanding used to compute basic and diluted EPS:

Three months ended

Nine months ended

September 30,

October 1,

September 30,

October 1,

    

2022

    

2021

    

2022

    

2021

(in thousands, except per share amounts)

Net income (loss)

$

76

$

840

$

(8,023)

$

(7,527)

Weighted-average common shares outstanding

 

13,110

 

12,606

 

12,971

 

12,391

Effect of dilutive stock options and restricted stock awards

 

250

 

535

 

 

Weighted-average common shares outstanding-diluted

 

13,360

 

13,141

 

12,971

 

12,391

Earnings (Loss) per share:

Basic

$

0.01

$

0.07

$

(0.62)

$

(0.61)

Diluted

$

0.01

$

0.06

$

(0.62)

$

(0.61)

For the three months ended September 30, 2022 and October 1, 2021, the Company excluded 401,000 and 26,000 common shares subject to outstanding equity awards, respectively, from the calculation of diluted shares because their impact would have been anti-dilutive. For the nine months ended September 30, 2022 and October 1, 2021, the Company reported a net loss, and accordingly, all outstanding equity awards have been excluded from such periods because including them would have been anti-dilutive.

32

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

12. CONTINGENCIES

Claims and Lawsuits

The Company is subject to claims and lawsuits from time to time, including those alleging professional errors or omissions that arise in the ordinary course of business against firms that operate in the engineering and consulting professions. The Company carries professional liability insurance, subject to certain deductibles and policy limits, for such claims as they arise and may from time to time establish reserves for litigation that is considered probable of a loss.

In accordance with accounting standards regarding loss contingencies, the Company accrues an undiscounted liability for those contingencies where the incurrence of a loss is probable and the amount can be reasonably estimated, and discloses the amount accrued and an estimate of any reasonably possible loss in excess of the amount accrued, if such disclosure is necessary for the Company’s financial statements not to be misleading. The Company does not accrue liabilities when the likelihood that the liability has been incurred is probable but the amount cannot be reasonably estimated, or when the liability is believed to be only reasonably possible or remote.

Because litigation outcomes are inherently unpredictable, the Company’s evaluation of legal proceedings often involves a series of complex assessments by management about future events and can rely heavily on estimates and assumptions. If the assessments indicate that loss contingencies that could be material to any one of the Company’s financial statements are not probable, but are reasonably possible, or are probable, but cannot be estimated, then the Company will disclose the nature of the loss contingencies, together with an estimate of the possible loss or a statement that such loss is not reasonably estimable. While the consequences of certain unresolved proceedings are not presently determinable, and a reasonable estimate of the probable and reasonably possible loss or range of loss in excess of amounts accrued for such proceedings cannot be made, an adverse outcome from such proceedings could have a material adverse effect on the Company’s earnings in any given reporting period. However, in the opinion of the Company’s management, after consulting with legal counsel, and taking into account insurance coverage, the ultimate liability related to current outstanding claims and lawsuits is not expected to have a material adverse effect on the Company’s financial statements.

33

Table of Contents

WILLDAN GROUP, INC. AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS – (Continued)
(Unaudited)

13. SUBSEQUENT EVENTS

Seventh Amendment to the Credit Agreement

On November 1, 2022, the Company entered into the Seventh Amendment to the Credit Agreement (the “Seventh Amendment”). The Seventh Amendment, (A) waives the minimum Adjusted EBITDA (as defined in the Fifth Amendment) threshold and any related Default or Event of Default (each as defined in the Fifth Amendment) for the fiscal quarter ending September 30, 2022, (B) amends the maximum Total Leverage Ratio (as defined in the Fifth Amendment) threshold and the minimum Adjusted EBITDA threshold for the remainder of the Extended Covenant Relief Period, (C) amends the pricing structure of borrowings under the Credit Agreement during the remainder of the Extended Covenant Relief Period, (D) restricts aggregate borrowings under the Revolving Credit Facility to no more than $10.0 million at any time during the period from November 1, 2022 through the date on which financial statements and compliance documents have been received by the Administrative Agent (as defined in the Credit Agreement) for the fiscal quarter ending March 31, 2023, (E) conditions access to the accordion feature of the Credit Agreement to periods when the Company’s Total Leverage ratio is less than 3.0, (F) amends the Total Leverage Ratio requirement contained in the conditions precedent required upon any Credit Event (as defined in the Credit Agreement) occurring prior to the delivery to the Administrative Agent of the financial statements and compliance documents required for the fiscal quarter ending March 31, 2023, (G) includes a general release of all Claims (as defined in the Seventh Amendment) against the Administrative Agent, the L/C Issuer and the Lenders (each as defined in the Credit Agreement) and (H) amends the timing requirement of certain financial reports. Additionally, during the remainder of the Extended Covenant Relief Period, the Company may not make Share Repurchases (as defined in the Seventh Amendment).

Pursuant to the Seventh Amendment, during the Extended Covenant Relief Period, (A) borrowings under the Credit Agreement will bear interest at SOFR plus 4.00%; provided, that SOFR cannot be less than 0.00%, and (B) the Company will pay a commitment fee of 0.50% per annum for the unused portion of the revolving credit facility under the Credit Agreement.

After the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.40% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio.

34

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

Our Company

We are a provider of professional, technical and consulting services to utilities, private industry, and public agencies at all levels of government. As resources and infrastructures undergo continuous change, we help organizations and their communities evolve and thrive by providing a wide range of technical services for energy solutions and government infrastructure. Through engineering, program management, policy advisory, and software and data management, we design and deliver trusted, comprehensive, innovative, and proven solutions to improve efficiency, resiliency, and sustainability in energy and infrastructure to our customers.

Our broad portfolio of services operates within two reporting segments: (1) Energy and (2) Engineering and Consulting. The interfaces and synergies between these segments are important elements of our strategy to design and deliver trusted, comprehensive, innovative, and proven solutions for our customers.

Our Energy segment provides specialized, innovative, comprehensive energy solutions to businesses, utilities, state agencies, municipalities, and non-profit organizations in the U.S. Our experienced engineers, consultants, and staff help our clients realize cost and energy savings by tailoring efficient and cost-effective solutions to assist in optimizing energy spend. Our energy efficiency services include comprehensive audit and surveys, program design, master planning, demand reduction, grid optimization, benchmarking analyses, design engineering, construction management, performance contracting, installation, alternative financing, measurement and verification services, and advances in software and data analytics.

Our Engineering and Consulting segment provides civil engineering-related construction management, building and safety, city engineering, city planning, civil design, geotechnical, material testing and other engineering consulting services to our clients. Our engineering services include rail, port, water, mining and other civil engineering projects. We also provide economic and financial consulting to public agencies along with national preparedness and interoperability services, communications, and technology solutions. Lastly, we supplement the engineering services that we offer our clients by offering expertise and support for the various financing techniques public agencies utilize to finance their operations and infrastructure. We also support the mandated reporting and other requirements associated with these financings. We provide financial advisory services for municipal securities but do not provide underwriting services.

Historical and Current Impact of Covid-19

The coronavirus (“Covid-19”) pandemic and efforts to limit its spread negatively impacted our operations during our fiscal year 2020 and continued to impact us, albeit to a lesser extent, during fiscal year 2021. In California and New York, the states in which we have historically derived a majority of our revenue, mandatory shutdown orders were issued in March 2020 followed by phased re-openings that began in May 2020, followed by periods of curtailments as a result of resurgences of Covid-19 cases, and subsequent re-openings through 2020 and 2021. Our largest program for the Los Angeles Department of Water and Power (“LADWP”) resumed in the third quarter of fiscal 2021 and was the last program suspended due to Covid-19. In addition, through fiscal year 2020 and 2021, none of our contracts were cancelled due to Covid-19.

Through the current fiscal year 2022, though none of our current programs are under suspension due to Covid-19 restrictions, certain market segments such as small business customers of major utilities continue to experience lingering impacts of the reduced economic activity due to the Covid-19 related mandates in 2020 and 2021. As of November 2, 2022, none of our contracts were cancelled as a result of Covid-19.

Asset and liability valuation and other estimates used in preparation of financial statements

As of September 30, 2022, we did not have any impairment with respect to goodwill or long-lived assets, including intangible assets. Because the full extent of the impact of a resurgence in the Covid-19 outbreak and efforts to slow its spread are unknown at this time, they could, under certain circumstances, cause impairment and result in a non-

35

cash impairment charge being recorded in future periods. Changes to the estimated future profitability of the business may require that we establish an additional valuation allowance against all or some portion of our net deferred tax assets.

Impact on Clients and Subcontractors and Other Risks

We primarily work for utilities, municipalities and other public agencies. Should there be a resurgence related to Covid-19, some of these customers could experience significant budget shortfalls for the current year and beyond as a result of the measures taken to mitigate the resurgence effects of the Covid-19 pandemic and/or revenue shortfalls as a result of reduced economic activity. Although none of our contracts with governmental or public agencies were materially modified during our fiscal year 2020 or fiscal year 2021, these potential budget deficits could result in delayed funding for existing contracts, postponements of new contracts or price concessions. Further, most of our clients are not committed to purchase any minimum amount of services, as our agreements with them are based on a “purchase order” or “master service agreement” model. As a result, they may discontinue utilizing some or all of our services with little or no notice.

 In addition, we rely on subcontractors and material suppliers to complete a substantial portion of our work, especially in our Energy segment. If our significant subcontractors and material suppliers suffer significant economic harm and must limit or cease operations or file for bankruptcy as a result of the current economic slowdown, our subcontractors and material suppliers may not be able to fulfill their contractual obligations satisfactorily and we may not have the ability to select our subcontractors and material suppliers of choice for new contracts. If our subcontractors and material suppliers are not able to fulfill their contractual obligations, it could result in a significant increase in costs for us to complete the projects or cause significant delays to the realization of revenues under those projects. The ultimate impact of Covid-19 on our financial condition and results of operations will depend on all of the factors noted above, including other factors that we may not be able to forecast at this time. See the risk factor “The Covid-19 pandemic and health and safety measures intended to slow its spread have adversely affected, and may continue to adversely affect, our business, results of operations and financial condition.” under Part I. Item 1A. “Risk Factors” of our Annual Report on Form 10-K for the year ended December 31, 2021. While Covid-19 has had an adverse effect on our business, financial condition and results of operations, we are unable to predict the extent or duration of future impacts at this time.

36

Results of Operations

Third Quarter and Nine Months Overview

The following tables set forth, for the periods indicated, certain information derived from our consolidated statements of comprehensive income(1):

Three Months Ended

September 30,

October 1,

     

2022

2021

$ Change

% Change

(in thousands, except percentages)

Contract revenue

$

121,399

     

100.0

%

     

$

98,297

     

100.0

%

     

$

23,102

     

23.5

%

Direct costs of contract revenue:

Salaries and wages

21,420

17.6

16,346

16.6

5,074

31.0

Subcontractor services and other direct costs

62,457

51.4

43,824

44.6

18,633

42.5

Total direct costs of contract revenue

83,877

69.1

60,170

61.2

23,707

39.4

Gross profit

37,522

30.9

38,127

38.8

(605)

(1.6)

General and administrative expenses:

Salaries and wages, payroll taxes and employee benefits

20,373

16.8

19,374

19.7

999

5.2

Facilities and facilities related

2,228

1.8

2,351

2.4

(123)

(5.2)

Stock-based compensation

1,607

1.3

4,210

4.3

(2,603)

(61.8)

Depreciation and amortization

4,405

3.6

4,267

4.3

138

3.2

Other

9,664

8.0

6,482

6.6

3,182

49.1

Total general and administrative expenses

38,277

31.5

36,684

37.3

1,593

4.3

Income (loss) from operations

(755)

(0.6)

1,443

1.5

(2,198)

(152.3)

Other income (expense):

Interest expense

(1,435)

(1.2)

(937)

(1.0)

(498)

53.1

Other, net

740

0.6

98

0.1

642

N/M

Total other income (expense)

(695)

(0.6)

(839)

(0.9)

144

(17.2)

Income (Loss) before income tax expense

(1,450)

(1.2)

604

0.6

(2,054)

(340.1)

Income tax expense (benefit)

(1,526)

(1.3)

(236)

(0.2)

(1,290)

546.6

Net income (loss)

$

76

0.1

$

840

0.9

$

(764)

(91.0)

(1)Percentages are expressed as a percentage of contract revenue and may not total due to rounding.

N/M = Not meaningful

37

Nine Months Ended

September 30,

October 1,

2022

2021

$ Change

% Change

(in thousands, except percentages)

Contract revenue

    

$

315,882

    

100.0

%

    

$

261,537

     

100.0

%

    

$

54,345

     

20.8

%

Direct costs of contract revenue:

Salaries and wages

61,514

19.5

48,532

18.6

12,982

26.7

Subcontractor services and other direct costs

153,896

48.7

111,860

42.8

42,036

37.6

Total direct costs of contract revenue

215,410

68.2

160,392

61.3

55,018

34.3

Gross profit

100,472

31.8

101,145

38.7

(673)

(0.7)

General and administrative expenses:

Salaries and wages, payroll taxes and employee benefits

60,169

19.0

57,530

22.0

2,639

4.6

Facilities and facilities related

6,999

2.2

7,373

2.8

(374)

(5.1)

Stock-based compensation

6,626

2.1

14,349

5.5

(7,723)

(53.8)

Depreciation and amortization

13,240

4.2

12,678

4.8

562

4.4

Other

25,099

7.9

19,033

7.3

6,066

31.9

Total general and administrative expenses

112,133

35.5

110,963

42.4

1,170

1.1

Income (loss) from operations

(11,661)

(3.7)

(9,818)

(3.8)

(1,843)

18.8

Other income (expense):

Interest expense

(3,216)

(1.0)

(3,100)

(1.2)

(116)

3.7

Other, net

1,266

0.4

34

0.0

1,232

N/M

Total other income (expense)

(1,950)

(0.6)

(3,066)

(1.2)

1,116

(36.4)

Income (Loss) before income tax expense

(13,611)

(4.3)

(12,884)

(4.9)

(727)

5.6

Income tax expense (benefit)

(5,588)

(1.8)

(5,357)

(2.0)

(231)

4.3

Net income (loss)

$

(8,023)

(2.5)

$

(7,527)

(2.9)

$

(496)

6.6

(1)Percentages are expressed as a percentage of contract revenue and may not total due to rounding.

N/M = Not meaningful

38

The following tables provides information about disaggregated revenue of our two segments, Energy and Engineering and Consulting, by contract type, client type and geographical region:

    

Three months ended September 30, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

7,468

$

13,880

$

21,348

Unit-based

43,039

3,791

46,830

Fixed price

52,118

1,103

53,221

Total (1)

$

102,625

$

18,774

$

121,399

Client Type

Commercial

$

6,848

$

1,376

$

8,224

Government

48,073

17,348

65,421

Utilities (2)

47,704

50

47,754

Total (1)

$

102,625

$

18,774

$

121,399

Geography (3)

Domestic

$

102,625

$

18,774

$

121,399

    

Nine months ended September 30, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

23,873

$

40,221

$

64,094

Unit-based

128,540

10,530

139,070

Fixed price

109,773

2,945

112,718

Total (1)

$

262,186

$

53,696

$

315,882

Client Type

Commercial

$

21,638

$

4,330

$

25,968

Government

96,293

49,139

145,432

Utilities (2)

144,255

227

144,482

Total (1)

$

262,186

$

53,696

$

315,882

Geography (3)

Domestic

$

262,186

$

53,696

$

315,882

39

    

Three months ended October 1, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

9,104

$

13,160

$

22,264

Unit-based

51,470

2,650

54,120

Fixed price

20,950

963

21,913

Total (1)

$

81,524

$

16,773

$

98,297

Client Type

Commercial

$

7,741

$

1,568

$

9,309

Government

18,537

15,181

33,718

Utilities (2)

55,245

24

55,269

Total (1)

$

81,524

$

16,773

$

98,297

Geography (3)

Domestic

$

81,524

$

16,773

$

98,297

    

Nine months ended October 1, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

25,060

$

40,444

$

65,504

Unit-based

132,688

7,817

140,505

Fixed price

52,229

3,299

55,528

Total (1)

$

209,977

$

51,560

$

261,537

Client Type

Commercial

$

20,685

$

4,037

$

24,723

Government

45,766

47,391

93,157

Utilities (2)

143,525

132

143,657

Total (1)

$

209,977

$

51,560

$

261,537

Geography (3)

Domestic

$

209,977

$

51,560

$

261,537

(1)Amounts may not add to the totals due to rounding.
(2)Includes the portion of revenue related to small business programs paid by the end user/customer.
(3)Revenue from our foreign operations were immaterial for the three and nine months ended September 30, 2022 and October 1, 2021.

Three Months Ended September 30, 2022 Compared to Three Months Ended October 1, 2021

Contract revenue. Consolidated contract revenue increased $23.1 million, or 23.5%, in the three months ended September 30, 2022, compared to the three months ended October 1, 2021, primarily due to incremental revenues in our Energy segment generated from new governmental construction-management and design-build projects, combined with increased governmental revenues in our Engineering and Consulting segment, partially offset by decreased utility program revenues in our Energy segment.

Contract revenue in our Energy segment increased $21.1 million, or 25.9%, in the three months ended September 30, 2022, compared to the three months ended October 1, 2021, primarily as a result of incremental revenues generated from new governmental construction-management and design-build projects, partially offset by decreases in utility program revenues. Governmental revenues increased as a result of the start-up of newly awarded contracts. Utility program revenues decreased primarily as a result of software licensing sales that occurred in the third quarter of fiscal year 2021 that did not recur in the same period for 2022, combined with decreases in our utility program revenues that were driven by temporary funding reductions.

Contract revenue in our Engineering and Consulting segment increased $2.0 million, or 11.9%, in the three months ended September 30, 2022, compared to the three months ended October 1, 2021, primarily due to increased services provided to our governmental clients.

40

Direct costs of contract revenue. Direct costs of consolidated contract revenue increased $23.7 million, or 39.4%, in the three months ended September 30, 2022, compared to the three months ended October 1, 2021, primarily due to increases in our contract revenues as described above, as well as the ramping up of new projects for which we saw higher project startup costs relative to the revenue recognized.

Direct costs of contract revenue in our Energy segment increased $23.4 million, or 45.2%, in the three months ended September 30, 2022, compared to the three months ended October 1, 2021. Direct costs of contract revenue for the Engineering and Consulting segment increased $0.3 million, or 4.1%, in the three months ended September 30, 2022, compared to the three months ended October 1, 2021.

Subcontractor services and other direct costs increased by $18.6 million, or 42.5%, and salaries and wages increased by $5.1 million, or 31.0%, in the three months ended September 30, 2022, compared to the three months ended October 1, 2021. The increases were primarily due to the increase in contract revenues as described above combined with changes in the mix of those contract revenues to those which contain a higher percentage of material costs and installation subcontracting and lower percentage of labor costs, as well as the ramping up of new projects for which we saw higher project startup costs relative to the revenue recognized.

Gross Profit. Gross profit decreased 1.6% to $37.5 million, or 30.9% gross margin, for the three months ended September 30, 2022, compared to gross profit of $38.1 million, or 38.8% gross margin, for the three months ended October 1, 2021. The decrease in our gross margin was primarily driven by changes in the mix of revenues as described above combined with the ramping up of new projects for which we saw higher project startup costs relative to the revenue recognized.

General and administrative expenses. General and administrative (“G&A”) expenses increased by $1.6 million, or 4.3%, in the three months ended September 30, 2022, compared to the three months ended October 1, 2021. The increase in G&A expenses consisted of an increase of $2.4 million in the Energy segment combined with an increase of $0.8 million in the Engineering and Consulting segment, partially offset by a decrease of $1.6 million in unallocated corporate expense. The increase in G&A expenses was primarily attributed to increased contingent consideration expense related to prior acquisitions, higher computer-related expenses, and higher salaries and wages, payroll taxes and employee benefits, partially offset by lower stock-based compensation expenses.

Within G&A expenses, the increase of $3.2 million in other general and administrative expenses combined with the increase of $1.0 million in salaries and wages, payroll taxes and employee benefits and the increase of $0.1 million in depreciation and amortization was partially offset by a decrease of $2.6 million in stock-based compensation and a decrease of $0.1 million in facilities and facility related expenses. The increase in other general and administrative expenses was primarily due to increased contingent consideration expense related to prior acquisitions, higher computer-related expenses and professional service fees. The increase in salaries and wages, payroll taxes and employee benefits was primarily due to increases in personnel. The increase in depreciation and amortization was primarily related to higher amortization of internally-developed computer software. The decrease in stock-based compensation expenses was primarily related to previously awarded stock grants reaching the end of their corresponding vesting periods. The decrease in facilities and facility related expenses was due to satisfied facility leases that were not renewed.

Income (loss) from operations. Operating loss was $0.8 million for the three months ended September 30, 2022, compared to an operating income of $1.4 million for the three months ended October 1, 2021, as a result of the factors noted above.

Total other expense, net. Total other expense, net, decreased $0.1 million, or 17.2%, for the three months ended September 30, 2022, compared to the three months ended October 1, 2021, as a result of income from indemnification agreements, partially offset by higher interest expense related to an increase in the average borrowings under our term loans.

41

Income tax expense (benefit). We recorded an income tax benefit of $1.5 million for the three months ended September 30, 2022, compared to a tax benefit of $0.2 million for the three months ended October 1, 2021. The increase in the tax benefit is primarily attributable to the loss before income tax combined with various tax deductions and tax credits.

Net income (loss). Our net income was $0.1 million for the three months ended September 30, 2022, as compared to a net income of $0.8 million for the three months ended October 1, 2021. The decrease in net income was primarily attributable to the decrease in gross profit combined with higher G&A, offset by higher income tax benefit.

Nine Months Ended September 30, 2022 Compared to Nine Months Ended October 1, 2021

Contract revenue. Consolidated contract revenue increased $54.3 million, or 20.8%, in the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021, primarily due to incremental revenues in our Energy segment generated from new governmental construction-management and design-build projects, combined with incremental revenues from the resumption of projects that had been suspended in fiscal 2021 due to Covid-19, and increased governmental revenues in our Engineering and Consulting segment, partially offset by software licensing sales that occurred in the third quarter of fiscal year 2021 that did not recur in the same period for 2022.

Contract revenue in our Energy segment increased $52.2 million, or 24.9%, in the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021, primarily as a result of incremental revenues from new governmental construction-management and design-build projects, combined with incremental revenues from the resumption of projects that had been suspended in fiscal 2021 due to Covid-19, partially offset by software licensing sales that occurred in the third quarter of fiscal year 2021 that did not recur in the same period for 2022.

Contract revenue in our Engineering and Consulting segment increased $2.1 million, or 4.1%, in the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021, primarily due to increased services provided to our governmental clients.

Direct costs of contract revenue.  Direct costs of consolidated contract revenue increased $55.0 million, or 34.3%, in the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021, primarily due to increases in our contract revenues in our Energy segment as described above as well as the ramping up of new projects for which we saw higher project startup costs relative to the revenue recognized.

Direct costs of contract revenue in our Energy segment increased $55.9 million, or 41.7%, in the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021. Direct costs of contract revenue for the Engineering and Consulting segment decreased $0.9 million, or 3.4%, in the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021.

Subcontractor services and other direct costs increased by $42.0 million, or 37.6%, and salaries and wages increased by $13.0 million, or 26.7%, in the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021, primarily due to the increases in contract revenues as described above combined with changes in the mix of those contract revenues to those which contain a higher percentage of material costs and installation subcontracting and lower percentage of labor costs, as well as the ramping up of new projects for which we saw higher project startup costs relative to the revenue recognized.

Gross Profit. Gross profit decreased 0.7% to $100.5 million, or 31.8% gross margin, for the nine months ended September 30, 2022, compared to gross profit of $101.1 million, or 38.7% gross margin, for the nine months ended October 1, 2021. The decrease in gross margin was primarily driven by changes in the mix of revenues as described above, combined with a reduction in software licensing revenues and the ramping up of new projects for which we saw higher project startup costs relative to the revenue recognized.

42

General and administrative expenses.  G&A expenses increased $1.2 million, or 1.1%, in the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021. The increase in G&A expenses consisted of an increase of $4.1 million in the Energy segment combined with an increase of $2.2 million in the Engineering and Consulting segment, partially offset by a decrease of $5.1 million in unallocated corporate expense. The increase in G&A expenses was primarily attributed to increased contingent consideration expense related to prior acquisitions, higher computer-related expenses, and higher salaries and wages, payroll taxes and employee benefits, partially offset by lower stock-based compensation expenses.

Within G&A expenses, the increase of $6.1 million in other general and administrative expenses combined with the increase of $2.6 million in salaries and wages, payroll taxes and employee benefits and the increase of $0.6 million in depreciation and amortization was partially offset by a decrease of $7.7 million in stock-based compensation and a decrease of $0.4 million in facilities and facility related expenses. The increase in other general and administrative expenses was primarily due to increased contingent consideration expense related to prior acquisitions, higher computer-related expenses and higher professional service fees. The increase in salaries and wages, payroll taxes and employee benefits was primarily due to increases in personnel. The increase in depreciation and amortization was primarily related to higher amortization of internally-developed computer software. The decrease in stock-based compensation expenses was primarily related to previously awarded stock grants reaching the end of their corresponding vesting periods. The decrease in facilities and facility related expenses was due to satisfied facility leases that were not renewed.

Income (loss) from operations. Operating loss was $11.7 million for the nine months ended September 30, 2022, compared to operating loss of $9.8 million for the three months ended October 1, 2021, as a result of the factors noted above. As a percentage of contract revenue, operating loss improved from 3.8% to 3.7% for the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021.

Total other expense, net.  Total other expense, net, decreased $1.1 million, or 36.4%, for the nine months ended September 30, 2022, compared to the nine months ended October 1, 2021, as a result of income from indemnification agreements.

Income tax expense (benefit). We recorded an income tax benefit of $5.6 million for the nine months ended September 30, 2022 compared to a tax benefit of $5.4 million for the nine months ended October 1, 2021. The increase in the tax benefit is primarily attributable to the increase in loss before income tax combined with various tax deductions and tax credits.

Net income (loss). Our net loss was $8.0 million for the nine months ended September 30, 2022, as compared to a net loss of $7.5 million for the nine months ended October 1, 2021, primarily as a result of lower gross profit, as described above, partially offset by lower total other expense, net.

Liquidity and Capital Resources

Nine Months Ended

September 30,

October 1,

2022

2021

(in thousands)

Net cash provided by (used in):

    

Operating activities

    

$

4,503

    

$

(1,710)

Investing activities

(6,894)

(4,852)

Financing activities

(12)

(17,038)

Net increase (decrease) in cash and cash equivalents

$

(2,403)

$

(23,600)

43

Sources of Cash

Our primary source of liquidity for the next 12 months and beyond is cash generated from operations and borrowings under our Revolving Credit Facility. We believe that our cash and cash equivalents, cash generated by operating activities, and available borrowings under our Revolving Credit Facility and Delayed Draw Term Loan will be sufficient to finance our operating activities for at least the next 12 months. However, as a result of the recent amendment to our Revolving Credit Facility, which limits our borrowing capacity to no more than $10.0 million as described below, our liquidity may be impacted if we continue to incur higher than expected costs under certain of our utility contracts where project costs remain high relative to revenue received.

As of September 30, 2022, we had a fully drawn $100 million Term A Loan with $67.5 million outstanding, a $50.0 million Revolving Credit Facility with no borrowed amounts outstanding and $4.1 million in letters of credit issued, and a fully drawn $50.0 million Delayed Draw Term Loan with $41.8 million outstanding, each scheduled to mature on June 26, 2024. In addition, as of September 30, 2022, we had $8.8 million of cash and cash equivalents.

On November 1, 2022, we entered into the Seventh Amendment to the Credit Agreement (the “Seventh Amendment”). The Seventh Amendment, among other things, restricts our borrowing capacity under the Revolving Credit Facility to no more than $10.0 million from November 1, 2022 through the date on which financial statements and compliance documents have been received by the Administrative Agent (as defined in the Credit Agreement) for the fiscal quarter ending March 31, 2023 and condition our access to the accordion feature of the Credit Agreement to periods when our Total Leverage ratio is less than 3.0. For more information, see Part I, Item 1, Note 6, “Debt Obligations”, and Note 13, “Subsequent Events”, of the Notes to Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.

As of September 30, 2022, we were in compliance with all covenants contained in the Credit Agreement, as amended, other than the minimum Adjusted EBITDA thresholds for the test period ended September 30, 2022. Such non-compliance with the minimum Adjusted EBITDA thresholds for the test period ended September 30, 2022 was subsequently waived by the lenders under the Credit Agreement pursuant to the Seventh Amendment. To reduce the risk of future potential covenant breaches, we are in discussions with certain utilities to streamline our contract delivery requirements and eliminate certain cost inefficiencies. For information on our risks related to debt covenant defaults and our indebtedness, see Part I, Item 1A, Risk Factors in our Annual Report on Form 10-K for the year ended December 31, 2021.

As of September 30, 2022, borrowings under our Credit Facilities, exclusive of the effects of upfront fees, undrawn fees and issuance cost amortization, bore interest at 4.6%. See Part I, Item 1, Note 6, “Debt Obligations”, of the Notes to Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q, and Part II, Item 8, Note 5, “Debt Obligations”, of the Notes to the Consolidated Financial Statements included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2021, for information regarding our indebtedness, including information about new borrowings and repayments, principal repayment terms, interest rates, covenants, and other key terms of our outstanding indebtedness.

Cash Flows from Operating Activities

Cash flows provided by operating activities were $4.5 million for the nine months ended September 30, 2022, as compared to cash flows used in operating activities of $1.7 million for the nine months ended October 1, 2021. Cash flows provided by operating activities for the nine months ended September 30, 2022 primarily consists of net income, adjusted for non-cash charges, such as depreciation and amortization and stock-based compensation, plus or minus changes in operating assets and liabilities. Cash flows provided by operating activities for the nine months ended September 30, 2022, was favorably impacted by lower working capital requirements, offset by increases in operating expenses due to new contract awards. Changes in cash flows used in operating activities for the nine months ended October 1, 2021, resulted primarily due to the increased demand for working capital related to the resumption of utility programs that were suspended in 2020 and start-up costs associated with certain new contract awards. 

44

Cash Flows from Investing Activities

Cash flows used in investing activities were $6.9 million for the nine months ended September 30, 2022, as compared to cash flows used in investing activities of $4.9 million for the nine months ended October 1, 2021. Cash flows used in investing activities for the nine months ended September 30, 2022 were primarily due to cash paid for the development of software and the purchase of equipment. Cash flows used in investing activities for the nine months ended October 1, 2021, were primarily due to cash paid for the development of software, the purchase of equipment and leasehold improvements.

Cash Flows from Financing Activities

Cash flows used in financing activities were $12,000 for the nine months ended September 30, 2022, as compared to cash flows used in financing activities of $17.0 million for the nine months ended October 1, 2021. Cash flows used in financing activities for the nine months ended September 30, 2022 were primarily attributable to payments of $10.2 million for contingent consideration related to prior acquisitions combined with repayments of $9.8 million under our term loan facility and revolving line of credit, offset by borrowings of $20.0 million under our Delayed Draw Term Loan. Cash flows used in financing activities for the nine months ended October 1, 2021 were primarily attributable to repayments of $9.8 million under our term loan facility and revolving line of credit, payments of $6.6 million for contingent consideration related to prior acquisitions, payments of taxes on stock grants of $3.1 million, payments on notes payable of $1.7 million, partially offset by $2.7 million in proceeds from sales of common stock under our employee stock purchase plan and $1.7 million in proceeds from stock option exercise. 

Off-Balance Sheet Arrangements

We do not have any off-balance sheet financing arrangements or liabilities. In addition, our policy is not to enter into futures or forward contracts. Finally, we do not have any majority-owned subsidiaries or any interests in, or relationships with, any special-purpose entities that are not included in the consolidated financial statements. We have, however, an administrative services agreement with Genesys in which we provide Genesys with ongoing administrative, operational and other non-professional support services. We manage Genesys and have the power to direct the activities that most significantly impact Genesys’ performance, in addition to being obligated to absorb expected losses from Genesys. Accordingly, we are the primary beneficiary of Genesys and consolidate Genesys as a variable interest entity.

45

Short and Long-term Uses of Cash

General

Our principal uses of cash are to fund operating expenses and pay down outstanding debt. From time to time, we also use cash to help fund business acquisitions. Our cash and cash equivalents are impacted by the timing of when we pay expenses as reflected in the change in our outstanding accounts payable and accrued expenses.

Contractual Obligations

The following table sets forth our known contractual obligations as of September 30, 2022:

    

    

Less than

    

    

    

More than

 

Contractual Obligations

Total

1 Year

1 - 3 Years

3 - 5 Years

5 Years

 

( in thousands)

Long term debt (1)

$

109,422

$

15,510

$

93,912

$

$

Interest payments on debt outstanding (2)

7,847

4,654

3,193

Operating leases

 

13,636

 

4,889

 

5,815

 

2,520

 

412

Finance leases

 

2,627

 

970

 

1,417

 

211

 

29

Total contractual cash obligations

$

133,532

$

26,023

$

104,337

$

2,731

$

441

(1)Long-term debt includes $67.5 million outstanding on our Term A Loan and $41.8 million outstanding on our Delayed Draw Term Loan as of September 30, 2022. We have assumed no future borrowings or repayments (other than at maturity) for purposes of this table. Our term loans are scheduled to mature on June 26, 2024.
(2)Borrowings under our Delayed Draw Term Loan bear interest at a variable rate. Future interest payments on our Credit Facilities are estimated using floating rates in effect as of September 30, 2022.

We are obligated to pay earn-out payments in connection with our 2019 acquisition of Energy and Environmental Economics, Inc. (“E3, Inc.”). We are obligated to pay up to $12.0 million in cash if E3, Inc. exceeds certain financial targets during the three years after the E3, Inc. closing date. As of September 30, 2022, we had estimated remaining contingent consideration payable of $2.5 million related to this acquisition. For the nine months ended September 30, 2022, our statement of operations includes $1.7 million of accretion (excluding fair value adjustments) related to the contingent consideration.

Outstanding Indebtedness

See Part I, Item 1, Note 6, “Debt Obligations”, of the Notes to Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q, and Part II, Item 8, Note 5, “Debt Obligations”, of the Notes to the Consolidated Financial Statements included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2021, for information regarding our indebtedness, including information about new borrowings and repayments, principal repayment terms, interest rates, covenants, and other key terms of our outstanding indebtedness.

Interest Rate Swap

From time to time, we enter into interest rate swap agreements to moderate our exposure to fluctuations in interest rates underlying our variable rate debt. For more information, see Part I, Item 3, “Quantitative and Qualitative Disclosures About Market Risk”, and Note 5, “Derivatives”, to the Notes of Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.

46

Impact of Inflation

Due to the average duration of our projects and our ability to negotiate prices as contracts end and new contracts begin, our operations have not been materially impacted by inflation. However, inflationary pressures, including expectations of future inflation, may impact the customers of our utility clients, which may lead to delayed or deferred decisions regarding expenditures to improve energy efficiency, and therefore potentially impacting our future revenues.

Components of Revenue and Expense

Contract Revenue

We generally provide our services under contracts, purchase orders or retainer letters. The agreements we enter into with our clients typically incorporate one of three principal types of pricing provisions: time-and-materials, unit-based, and fixed price. Revenue on our time-and-materials and unit-based contracts are recognized as the work is performed in accordance with specific terms of the contract. As of September 30, 2022, 20% of our contracts are time-and-materials contracts, 44% of our contracts are unit-based contracts, and 36% are fixed price contracts, compared to 25% for time-and-materials contracts, 54% for unit-based contracts, and 21% for fixed price contracts, as of October 1, 2021.

Some of these contracts include maximum contract prices, but contract maximums are often adjusted to reflect the level of effort to achieve client objectives and thus the majority of these contracts are not expected to exceed the maximum. Contract revenue on our fixed price contracts is determined on the percentage of completion method based generally on the ratio of direct costs incurred to date to estimated total direct costs at completion. Many of our fixed price contracts involve a high degree of subcontracted fixed price effort and are relatively short in duration, thereby lowering the risks of not properly estimating the percent complete.

Adjustments to contract cost estimates are made in the periods in which the facts requiring such revisions become known. When the revised estimate indicates a loss, such loss is recognized in the current period in its entirety. Claims and change orders that have not been finalized are evaluated to determine whether or not a change has occurred in the enforceable rights and obligations of the original contract. If these non-finalized changes qualify as a contract modification, a determination is made whether to account for the change in contract value as a modification to the existing contract, or a separate contract and revenue under the claims or change orders is recognized accordingly. Costs related to un-priced change orders are expensed when incurred, and recognition of the related revenue is based on the assessment above of whether or not a contract modification has occurred. Estimated profit for un-priced change orders is recognized only if collection is probable.

Our contracts come up for renewal periodically and at the time of renewal may be subject to renegotiation, which could impact the profitability on that contract. In addition, during the term of a contract, public agencies may request additional or revised services which may impact the economics of the transaction. Most of our contracts permit our clients, with prior notice, to terminate the contracts at any time without cause. While we have a large volume of contracts, the renewal, termination or modification of a contract, in particular contracts with Consolidated Edison, the Dormitory Authority-State of New York (“DASNY”), and utility programs associated with Los Angeles Department of Water and Power and Duke Energy Corp., may have a material effect on our consolidated operations.

Some of our contracts include certain performance guarantees, such as a guaranteed energy saving quantity. Such guarantees are generally measured upon completion of a project. In the event that the measured performance level is less than the guaranteed level, any resulting financial penalty, including any additional work that may be required to fulfill the guarantee, is estimated and charged to direct expenses in the current period. We have not experienced any significant costs under such guarantees.

47

Direct Costs of Contract Revenue

Direct costs of contract revenue consist primarily of that portion of salaries and wages that have been incurred in connection with revenue producing projects. Direct costs of contract revenue also include material costs, subcontractor services, equipment and other expenses that are incurred in connection with revenue producing projects. Direct costs of contract revenue exclude that portion of salaries and wages related to marketing efforts, vacations, holidays and other time not spent directly generating revenue under existing contracts. Such costs are included in general and administrative expenses. Additionally, payroll taxes, bonuses and employee benefit costs for all of our personnel are included in general and administrative expenses since no allocation of these costs is made to direct costs of contract revenue.

Other companies may classify as direct costs of contract revenue some of the costs that we classify as general and administrative costs. We expense direct costs of contract revenue when incurred.

General and Administrative Expenses

G&A expenses include the costs of the marketing and support staffs, other marketing expenses, management and administrative personnel costs, payroll taxes, bonuses and employee benefits for all of our employees and the portion of salaries and wages not allocated to direct costs of contract revenue for those employees who provide our services. G&A expenses also include facility costs, depreciation and amortization, professional services, legal and accounting fees and administrative operating costs. Within G&A expenses, “Other” includes expenses such as professional services, legal and accounting, computer costs, travel and entertainment, marketing costs and acquisition costs. We expense general and administrative costs when incurred.

Critical Accounting Policies

We have prepared the accompanying unaudited Condensed Consolidated Financial Statements in accordance with generally accepted accounting principles in the U.S. (“GAAP”). To prepare these financial statements in conformity with GAAP, we must make estimates and assumptions that affect the reported amounts of assets and liabilities at the date of the financial statements and the reported amount of revenue and expenses in the reporting period. Our actual results may differ from these estimates. We have adopted accounting policies and practices that are generally accepted in the industry in which we operate.

There have been no material changes in our critical accounting policies and estimates from those disclosed in our Annual Report on Form 10-K for our fiscal year ended December 31, 2021. Please refer to Part II, Item 7 of our Annual Report on Form 10-K for the fiscal year ended December 31, 2021 for a discussion of our critical accounting policies and estimates.

Recent Accounting Standards

For a description of recently issued and adopted accounting pronouncements, including adoption dates and expected effects on our results of operations and financial condition, see Part I, Item 1, Note 2, “Recent Accounting Pronouncements”, of the Notes to Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.

48

ITEM 3. Quantitative and Qualitative Disclosures About Market Risk

Interest Rate Risk

Market risk is the risk of loss to future earnings, to fair values or to future cash flows that may result from changes in the price of a financial instrument. The value of a financial instrument may change as a result of changes in interest rates, exchange rates, commodity prices, equity prices and other market changes. Market risk is attributed to all market risk sensitive financial instruments, including long-term debt.

As of September 30, 2022, we had cash and cash equivalents of $8.8 million. This amount represents cash on hand in business checking accounts with BMO Harris Bank, N.A. We do not engage in trading activities and do not participate in foreign currency transactions.

We are subject to interest rate risk in connection with our Term A Loan and borrowings, if any, under our revolving credit facility and delayed draw term loan, each of which bears interest at variable rates. As of September 30, 2022, $67.5 million was outstanding under our Term A Loan, $41.75 million was outstanding under our delayed draw term loan, no borrowed amounts were outstanding and $4.1 million in letters of credit were issued under the revolving credit facility. Each of our Term A Loan, revolving credit facility and delayed draw term loan mature as of June 26, 2024 and are governed by our Credit Agreement, as amended.

Pursuant to the Fifth Amendment, (as described in Part I, Item 1, Note 6, “Debt Obligations,” of the Notes to Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q), during the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at our option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.50% with respect to Base Rate borrowings and 1.125% to 2.50% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. We will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.45% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.875% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio. Based upon the amount of our outstanding indebtedness as of September 30, 2022, a one percentage point increase in the effective interest rate would change our annual interest expense by approximately $1.1 million in 2022.

The Term A Loan amortizes quarterly in installments of $2.5 million beginning with the fiscal quarter ending September 27, 2019, with a final payment of all then remaining principal and interest due on the maturity date of June 26, 2024, subject to certain prepayment obligations based on our excess cash flow. Each borrowing under our delayed draw term loan will amortize quarterly in an amount equal to 2.5% of the aggregate outstanding borrowings under the delayed draw term loan, beginning with the first full fiscal quarter ending after the initial borrowing date, with a final payment of all then remaining principal and interest due on the maturity date of June 26, 2024, subject to certain prepayment obligations based on our excess cash flow.

49

ITEM 4.  Controls and Procedures

We maintain disclosure controls and procedures, as defined in Rule 13a-15(e) and Rule 15-d-15(e) under the Securities Exchange Act of 1934, as amended (the “Exchange Act”), as controls and other procedures that are designed to ensure that information required to be disclosed by the issuer in the reports that it files or submits under the Exchange Act is recorded, processed, summarized and reported, within the time periods specified in the SEC’s rules and forms. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that information required to be disclosed in the reports that we file or submit under the Securities Exchange Act is accumulated and communicated to our management, including our Chief Executive Officer, Thomas D. Brisbin, and our Chief Financial Officer, Creighton K. Early, as appropriate to allow timely decisions regarding required disclosure.

In connection with the preparation of this Quarterly Report, an evaluation was performed under the supervision and with the participation of our management, including our Chief Executive Officer and Chief Financial Officer, of the effectiveness of our disclosure controls and procedures as of September 30, 2022. Based on that evaluation, our Chief Executive Officer and Chief Financial Officer concluded that our disclosure controls and procedures were effective, at a reasonable assurance level, as of September 30, 2022.

No change in our internal control over financial reporting occurred during the period covered by this report that has materially affected, or is reasonably likely to materially affect, our internal control over financial reporting.

50

PART II.  OTHER INFORMATION

ITEM 1. Legal Proceedings

We are subject to claims and lawsuits from time to time, including those alleging professional errors or omissions that arise in the ordinary course of business against firms that operate in the engineering and consulting professions. We carry professional liability insurance, subject to certain deductibles and policy limits, for such claims as they arise and may from time to time establish reserves for litigation that is considered probable of a loss.

In accordance with accounting standards regarding loss contingencies, we accrue an undiscounted liability for those contingencies where the incurrence of a loss is probable and the amount can be reasonably estimated, and we disclose the amount accrued and an estimate of any reasonably possible loss in excess of the amount accrued, if such disclosure is necessary for our financial statements not to be misleading. We do not accrue liabilities when the likelihood that the liability has been incurred is probable but the amount cannot be reasonably estimated, or when the liability is believed to be only reasonably possible or remote.

Because litigation outcomes are inherently unpredictable, our evaluation of legal proceedings often involves a series of complex assessments by management about future events and can rely heavily on estimates and assumptions. If the assessments indicate that loss contingencies that could be material to any one of our financial statements are not probable, but are reasonably possible, or are probable, but cannot be estimated, then we disclose the nature of the loss contingencies, together with an estimate of the possible loss or a statement that such loss is not reasonably estimable. While the consequences of certain unresolved proceedings are not presently determinable, and a reasonable estimate of the probable and reasonably possible loss or range of loss in excess of amounts accrued for such proceedings cannot be made, an adverse outcome from such proceedings could have a material adverse effect on our earnings in any given reporting period. However, in the opinion of our management, after consulting with legal counsel, and taking into account insurance coverage, the ultimate liability related to current outstanding claims and lawsuits is not expected to have a material adverse effect on our financial statements.

51

ITEM 1A. Risk Factors

There are no material changes to the risk factors set forth in Part I, Item 1A, Risk Factors in our Annual Report on Form 10-K for the year ended December 31, 2021.

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

During the fiscal quarter ended September 30, 2022, we made the following repurchases of shares of our common stock from employees to satisfy tax withholding obligations incurred in connection with the vesting of restricted stock:

Total Number of
Shares Purchased

Average Price
Paid Per Share

Total Number of Shares Purchased as Part of Publicly Announced Plans or Programs

Maximum Number
(or Approximate Dollar
Value) of Shares That
May Yet be Purchased
Under the Plans or
Programs

July 2, 2022 – July 29, 2022

July 30, 2022 – August 26, 2022

175

$27.65

August 27, 2022 – September 30, 2022

TOTAL

175

$27.65

ITEM 3. Defaults upon Senior Securities

None.

ITEM 4. Mine Safety Disclosures

Not applicable.

ITEM 5. Other Information

On November 1, 2022, the Company entered into the Seventh Amendment to the Credit Agreement (the “Seventh Amendment”). The Seventh Amendment, (A) waives the minimum Adjusted EBITDA (as defined in the Fifth Amendment) threshold and any related Default or Event of Default (each as defined in the Fifth Amendment) for the fiscal quarter ending September 30, 2022, (B) amends the maximum Total Leverage Ratio (as defined in the Fifth Amendment) threshold and the minimum Adjusted EBITDA threshold for the remainder of the Extended Covenant Relief Period, (C) amends the pricing structure of borrowings under the Credit Agreement during the remainder of the Extended Covenant Relief Period, (D) restricts aggregate borrowings under the Revolving Credit Facility to no more than $10.0 million at any time during the period from November 1, 2022 through the date on which financial statements and compliance documents have been received by the Administrative Agent (as defined in the Credit Agreement) for the fiscal quarter ending March 31, 2023, (E) conditions access to the accordion feature of the Credit Agreement to periods when the Company’s Total Leverage ratio is less than 3.0, (F) amends the Total Leverage Ratio requirement contained in the conditions precedent required upon any Credit Event (as defined in the Credit Agreement) occurring prior to the

52

delivery to the Administrative Agent of the financial statements and compliance documents required for the fiscal quarter ending March 31, 2023, (G) includes a general release of all Claims (as defined in the Seventh Amendment) against the Administrative Agent, the L/C Issuer and the Lenders (each as defined in the Credit Agreement) and (H) amends the timing requirement of certain financial reports. Additionally, during the remainder of the Extended Covenant Relief Period, the Company may not make Share Repurchases (as defined in the Seventh Amendment).

Pursuant to the Seventh Amendment, during the Extended Covenant Relief Period, (A) borrowings under the Credit Agreement will bear interest at SOFR plus 4.00%; provided, that SOFR cannot be less than 0.00%, and (B) the Company will pay a commitment fee of 0.50% per annum for the unused portion of the revolving credit facility under the Credit Agreement.

After the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.40% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio.

53

ITEM 6. Exhibits

Exhibit
Number

Exhibit Description

3.1

First Amended and Restated Certificate of Incorporation of Willdan Group, Inc. (incorporated by reference to Willdan Group, Inc.’s Registration Statement on Form S-1, filed with the SEC on August 9, 2006, as amended (File No. 333-136444)).

3.2

Amended and Restated Bylaws of Willdan Group, Inc. (incorporated by reference to Exhibit 3.1 to Willdan Group, Inc.’s Current Report on Form 8-K, filed with the SEC on April 16, 2020).

4.1

Specimen Stock Certificate for shares of the Registrant’s Common Stock (incorporated by reference to Willdan Group, Inc.’s Registration Statement on Form S-1, filed with the SEC on August 9, 2006, as amended (File No. 333-136444)).

4.2

The Company agrees to furnish to the Securities and Exchange Commission upon request a copy of each instrument with respect to issues of long-term debt of Willdan Group, Inc. and its subsidiaries, the authorized principal amount of which does not exceed 10% of the consolidated assets of Willdan Group, Inc. and its subsidiaries.

10.1*

Seventh Amendment to Amended and Restated Credit Agreement, dated as of November 1, 2022, by and among Willdan Group, Inc., the Guarantors signatory thereto, the Lenders signatory thereto and BMO Harris Bank N.A., as administrative agent.

31.1*

Certification of Chief Executive Officer pursuant to Rule 13a-14(a) and 15d-14(a) under the Securities Exchange Act of 1934, as adopted pursuant to § 302 of the Sarbanes-Oxley Act of 2002.

31.2*

Certification of Chief Financial Officer pursuant to Rule 13a-14(a) or 15d-14(a) under the Securities Exchange Act of 1934, as adopted pursuant to § 302 of the Sarbanes-Oxley Act of 2002.

32.1**

Certifications of Chief Executive Officer and Chief Financial Officer pursuant to 18 U.S.C. 1350, as adopted pursuant to § 906 of the Sarbanes-Oxley Act of 2002.

101.INS*

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

101.SCH*

Inline XBRL Taxonomy Extension Schema Document

101.CAL*

Inline XBRL Taxonomy Extension Calculation Linkbase Document

101.DEF*

Inline XBRL Taxonomy Extension Definition Linkbase Document

101.LAB*

Inline XBRL Taxonomy Extension Label Linkbase Document

101.PRE*

Inline XBRL Taxonomy Extension Presentation Linkbase Document

104*

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

*

Filed herewith.

**

Furnished herewith.

Portions of the referenced exhibit have been omitted pursuant to Item 601(b) of Regulation S-K because it (i) is not material and (ii) would be competitively harmful if publicly disclosed.

¥

All schedules and exhibits were omitted pursuant to Item 601(a)(5) of Regulation S-K.

Indicates a management contract or compensating plan or arrangement

54

SIGNATURES

Pursuant to the requirements of Section 13 or 15(d) of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.

WILLDAN GROUP, INC.

/s/ Creighton K. Early

Creighton K. Early

Chief Financial Officer and Vice President

(Principal Financial Officer, Principal Accounting Officer and duly authorized officer)

November 3, 2022

55

EX-10.1 2 wldn-20220930xex10d1.htm EX-10.1

EXECUTION VERSION

Exhibit 10.1

Seventh Amendment to Amended and Restated Credit Agreement

This Seventh Amendment to Amended and Restated Credit Agreement (herein, the “Amendment”) is entered into as of November 1, 2022 (the “Seventh Amendment Effective Date”), among Willdan Group, Inc., a Delaware corporation (the “Borrower”), the Guarantors signatory hereto, the Lenders signatory hereto and BMO Harris Bank N.A., a national banking association, individually as a Lender and as Administrative Agent (the “Administrative Agent”).

Preliminary Statements

A.The Borrower, the Guarantors, the Lenders and the Administrative Agent are parties to that certain Amended and Restated Credit Agreement dated as of June 26, 2019 (as amended prior to the Seventh Amendment Effective Date, the “Credit Agreement”).  All capitalized terms used herein without definition shall have the same meanings herein as such terms have in the Credit Agreement.

B.The Borrower has requested that the Lenders make certain amendments to the Credit Agreement, and the Lenders party hereto are willing to do so under the terms and conditions set forth in this Amendment.

Now, Therefore, for good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the parties hereto agree as follows:  

Section 1.

Waiver.

Pursuant to Section 8.23(c) of the Credit Agreement, the Borrower is required to have Adjusted EBITDA of no less than $25,000,000 for the Test Period ended September 30, 2022 (the “September 2022 Adjusted EBITDA Requirement”).  The Borrower has requested that the Lenders waive (i) the September 2022 Adjusted EBITDA Requirement and (ii) any Default or Event of Default arising from (A) non-compliance with the September 2022 Adjusted EBITDA Requirement, (B) any failure to give notice when due pursuant to Section 8.5(g) of the Credit Agreement of any Default or Event of Default of a type contemplated by this clause (ii) relating to non-compliance with the September 2022 Adjusted EBITDA Requirement, and/or (C) the inaccuracy of any representation, warranty or certificate regarding the absence of any Default or Event of Default of a type contemplated by this clause (ii) relating to non-compliance with the September 2022 Adjusted EBITDA Requirement (collectively, the “Waived Defaults”), and, subject to the satisfaction of the conditions precedent set forth in Section 3 below, the Lenders party hereto agree to such request and, accordingly, hereby waive the Waived Defaults and the September 2022 Adjusted EBITDA Requirement solely with respect to the Test Period ended September 30, 2022.  The foregoing waiver is limited to the matters expressly set forth in this Section 1 and all other terms and conditions of the Credit Agreement and the other Loan Documents shall stand and remain unchanged and in full force and effect except as expressly amended herein.

Seventh Amendment to A&R Credit Agreement (Willdan, 2022) 4874-1715-0009 v17.doc

4135869


Section 2.

Amendments.

Subject to the satisfaction of the conditions precedent set forth in Section 3 below, effective as of the Seventh Amendment Effective Date, the Credit Agreement shall be and hereby is amended as follows:

2.1.Section 1.1 of the Credit Agreement is hereby amended by amending and restating the following defined terms to read as follows:

“Applicable Margin” means, with respect to Loans, Reimbursement Obligations, Letter of Credit Fees, and the commitment fees payable under Section 3.1(a), the rates per annum determined in accordance with the applicable pricing grid below:

(i)At all times from the Seventh Amendment Effective Date until the first Pricing Date occurring after the end of the Covenant Relief Period (notwithstanding anything in this definition to the contrary):

Applicable Margin for Base Rate Loans and Reimbursement Obligations

Applicable Margin for SOFR Loans and Financial Letter of Credit Fees

Applicable Margin for Performance Letter of Credit Fees

Applicable Margin for Revolving Credit Commitment Fees and Delayed Draw Term Loan Commitment Fees

3.00%

4.00%

3.00%

0.50%

-2-


(ii)From one Pricing Date to the next (commencing with the first Pricing Date occurring after the end of the Covenant Relief Period):

Level

Total Leverage Ratio for Such Pricing Date

Applicable Margin for Base Rate Loans and Reimbursement Obligations

Applicable Margin for SOFR Loans and Financial Letter of Credit Fees

Applicable Margin for Performance Letter of Credit Fees

Applicable Margin for Revolving Credit Commitment Fees and Delayed Draw Term Loan Commitment Fees

VI

Greater than or equal to 3.50 to 1.0

1.25%

2.25%

1.688%

0.40%

V

Less than 3.50 to 1.0, and greater than or equal to 2.50 to 1.0

1.00%

2.00%

1.50%

0.35%

IV

Less than 2.50 to 1.0, and greater than or equal to 2.00 to 1.0

0.75%

1.75%

1.31%

0.30%

III

Less than 2.00 to 1.0, and greater than or equal to 1.25 to 1.0

0.50%

1.50%

1.125%

0.25%

II

Less than 1.25 to 1.0, and greater than or equal to 0.50 to 1.0

0.25%

1.25%

0.94%

0.20%

I

Less than 0.50 to 1.0

0.125%

1.125%

0.84%

0.15%

For purposes hereof, the term “Pricing Date” means the date on which the Administrative Agent is in receipt of the Borrower’s most recent financial statements pursuant to Section 8.5(a) or (b), as applicable, for the Fiscal Quarter then ended, commencing with the Fiscal Quarter ending March 31, 2023.  Following the Covenant Relief Period, the Applicable Margin shall be established based on the Total Leverage Ratio for the most recently completed Fiscal Quarter and the Applicable Margin established on a Pricing Date shall remain in effect until the next Pricing Date.  If the Borrower has not delivered its financial statements by the date

-3-


such financial statements are required to be delivered under Section 8.5(a) or (b), until such financial statements are delivered, the Applicable Margin shall be the highest Applicable Margin (i.e., Level VI of the pricing grid in subsection (ii) above shall apply).  If the Borrower subsequently delivers such financial statements before the next Pricing Date, the Applicable Margin shall be determined on the date of delivery of such financial statements and remain in effect until the next Pricing Date.  In all other circumstances, the Applicable Margin shall be in effect from the Pricing Date that occurs immediately after the end of the Fiscal Quarter covered by such financial statements until the next Pricing Date.  Each determination of the Applicable Margin made by the Administrative Agent in accordance with the foregoing shall be conclusive and binding on the Borrower and the Lenders if reasonably determined.  Notwithstanding the foregoing, in the event that any financial statement or compliance certificate delivered pursuant to Sections 8.5(a), (b) or (h) is inaccurate, and such inaccuracy, if corrected, would have led to the imposition of a higher Applicable Margin for any period than the Applicable Margin applied for that period, then (A) the Borrower shall immediately deliver to the Administrative Agent a corrected financial statement and a corrected compliance certificate for that period (the “Corrected Financials Date”), (B) the Applicable Margin shall be determined based on the corrected compliance certificate for that period, and (C) the Borrower shall immediately pay to the Administrative Agent (for the account of the Lenders that hold the Commitments and Loans at the time such payment is received, regardless of whether those Lenders held the Commitments and Loans during the relevant period) the accrued additional interest owing as a result of such increased Applicable Margin for that period; provided, for the avoidance of doubt, such deficiency shall be due and payable as at such Corrected Financials Date and no Default under Section 9.1(a) shall be deemed to have occur with respect to such deficiency prior to such date. This paragraph shall not limit the rights of the Administrative Agent or the Lenders with respect to Section 2.9 and Section 9 hereof and shall survive the termination of this Agreement until the payment in full in cash of the Obligations.  

“Repurchase Conditions” means with respect to any purchase, redemption or other acquisition or retiring any of the Borrower’s capital stock or other equity interests (as contemplated by Section 8.12 hereof) (each a “Share Repurchase”), the following conditions:

-4-


(i)upon giving effect to such Share Repurchase, the Borrower shall: (A) be in compliance with the financial covenants contained in Section 8.23 on a pro forma basis, calculated using the then prevailing financial covenant compliance levels permitted as of the last day of the most recently ended Fiscal Quarter for which financial statements were required to be delivered hereunder; provided that, (I) in the case of the Fixed Charge Coverage Ratio, the Fixed Charge Coverage Ratio after giving effect to such Share Repurchase shall not be less than 1.20 to 1.00 and (II) at all times prior to delivery of the financial statements and compliance certificate required to be delivered pursuant to Sections 8.5(a) and 8.5(h), respectively, hereof for the Fiscal Quarter ending March 31, 2023, the Total Leverage Ratio on a pro forma basis after giving effect to such Share Repurchase shall not be greater than 3.25 to 1.00; and (B) have Liquidity of not less than $10,000,000;

(ii)such Share Repurchase together with all other Share Repurchases made under Section 8.12 following the Closing Date shall not exceed $8,000,000 in the aggregate;

(iii)no Default exists or would arise upon giving effect to such Share Repurchase;

(iv)the Borrower shall have delivered a written certificate to the Administrative Agent in the form attached hereto as Exhibit J signed by a Financial Officer of the Borrower (or in such other form acceptable to the Administrative Agent) certifying that each of the Repurchase Conditions have been satisfied in connection with such Share Repurchase and setting forth in reasonable detail the calculations supporting such certifications in respect of clause (i) of this definition; and

(v)the Covenant Relief Period shall have ended.  

2.2.Section 1.1 of the Credit Agreement is hereby further amended by adding the following new defined term thereto in the appropriate alphabetical order therein:

“Seventh Amendment Effective Date” means November 1, 2022.

2.3.Clause (iv) in the first paragraph of Section 2.15 of the Credit Agreement is hereby amended in its entirety to read as follows:

(iv) the Borrower shall be in compliance on a pro forma basis (after giving effect to such Increase as fully-drawn) with all

-5-


financial covenants in Section 8.23 hereof, calculated using the required covenant compliance levels for the next succeeding determination period, provided that the Total Leverage Ratio shall be no greater than 3.00 to 1.00 on a pro forma basis (after giving effect to such Increase as fully-drawn),

2.4.Section 7.1(b) of the Credit Agreement is hereby amended in its entirety to read as follows:

(b)(i) no Default shall have occurred and be continuing or would occur as a result of such Credit Event, (ii) the Total Leverage Ratio (calculated on a pro forma basis after giving effect to such Credit Event and, notwithstanding anything herein to the contrary, based upon Adjusted EBITDA for the most recently ended twelve (12) month period for which financial statements required under Section 8.5(j) have been delivered to the Administrative Agent) shall be no greater than the maximum permitted Total Leverage Ratio pursuant to Section 8.23(a) for the most recently ended determination period and (iii) the Borrower shall have delivered to the Administrative Agent reasonably satisfactory calculations evidencing the satisfaction of the condition in the foregoing clause (ii); provided that the foregoing clauses (ii) and (iii) shall only apply with respect to Credit Events occurring prior to the delivery to the Administrative Agent of the financial statements and compliance certificate pursuant to Section 8.5(a) and 8.5(h), respectively, for the Fiscal Quarter ending on or about March 31, 2023;

2.5.Section 8.5 of the Credit Agreement is hereby amended by (i) deleting the ‘and’ at the end of clause (h), (ii) replacing the “.” at the end of clause (i) with “; and”, (iii) adding a new clause (j) immediately succeeding clause (i) which shall read in its entirety as follows and (iv) amending and restating the last paragraph of Section 8.5 to read as follows:

(j)as soon as available, and in any event no later than thirty (30) days after the last day of each calendar month ending prior to the delivery of the financial statements and compliance certificate pursuant to Section 8.5(a) and 8.5(h), respectively, for the Fiscal Quarter ending on or about March 31, 2023 (commencing with the calendar month ending October 31, 2022), a copy of the consolidated balance sheet of the Loan Parties and their Subsidiaries as of the last day of such calendar month and the consolidated statements of income, retained earnings, and cash flows of the Loan Parties and their Subsidiaries for the calendar month and the Fiscal Year-to-date period then ended, each in reasonable detail showing in comparative form the figures for the corresponding date and period in the previous Fiscal Year,

-6-


prepared by the Borrower in accordance with GAAP (subject to the absence of footnote disclosures and Fiscal Year-end audit adjustments) and certified to by a Financial Officer of the Borrower, together with customary management discussion and analysis.

Furthermore, within five (5) Business Days (or such later date as the Administrative Agent may permit in its reasonable discretion) following the delivery of the financial statements referred to in Section 8.5(j) above with respect to any calendar month (at a reasonable time to be scheduled by the Administrative Agent in consultation with the Borrower and the Lenders), the Borrower, the Administrative Agent and the Lenders shall participate in a conference call to discuss, without limitation, the latest reports provided to the Administrative Agent pursuant to this Section 8.5 and any other matter of interest to the Administrative Agent or any Lender concerning the financial condition, operating performance, and business prospects of the Loan Parties.

Notwithstanding the above, (i) if any report or other information required under this Section 8.5 is due on a day that is not a Business Day, then such report or other information shall be required to be delivered on the first day after such day that is a Business Day, and (ii) documents required to be delivered pursuant to Section 8.5(a), (b) or (j) may be delivered electronically and if so delivered, shall be deemed to have been delivered on the date on which (x) such financial statements are filed for public availability on the Securities and Exchange Commission’s Electronic Data Gathering and Retrieval System (or any successor thereto) or (y) the Borrower notifies (which may be by facsimile or electronic mail) the Administrative Agent (and the Administrative Agent hereby agrees to notify each of the Lenders) that such financial statements have been posted at a site (the address of which shall be contained in such notice) on the world wide web, which site is accessible by the Administrative Agent and the Lenders through a widely held nationally recognized web browser, from which such financial statements may be readily viewed and printed.

2.6.Section 8.23(a) of the Credit Agreement is hereby amended in its entirety to read as follows:

(a)Total Leverage Ratio.  As of the last day of each Fiscal Quarter of the Borrower ending during the relevant period set forth below, the Borrower shall not permit the Total Leverage Ratio to be greater than the corresponding ratio set forth opposite such period:

-7-


Period(s) Ending

Total Leverage Ratio shall not be greater than:

Fiscal Quarter ending on or about 07/02/21

4.50 to 1.00

Fiscal Quarter ending on or about 10/01/21

5.25 to 1.00

Fiscal Quarter ending on or about 12/31/21

4.50 to 1.00

Fiscal Quarter ending on or about 04/01/22

5.75 to 1.00

Fiscal Quarter ending on or about 07/01/22

5.50 to 1.00

Fiscal Quarter ending on or about 09/30/22

5.00 to 1.00

Fiscal Quarter ending on or about 12/30/22

5.25 to 1.00

Fiscal Quarter ending on or about 03/31/23 and at all times thereafter

3.25 to 1.00

2.7.Section 8.23(c) of the Credit Agreement is hereby amended in its entirety to read as follows:

(c)Minimum Adjusted EBITDA.  Solely during the Covenant Relief Period, as of the last day of each Test Period ending on the relevant date set forth below, the Borrower shall have Adjusted EBITDA for such Test Period of no less than the amount set forth opposite such date:

Test Period Ending

Minimum Adjusted EBITDA:

12/31/21

$22,500,000

04/01/22

$20,500,000

07/01/22

$22,500,000

09/30/22

N/A

12/30/22

$20,000,000

2.8.Section 8.23 of the Credit Agreement is hereby amended by adding a new clause (e) immediately following clause (d) to read in its entirety as follows:

(e)Maximum Revolving Credit Exposure.  The Borrower shall not permit the aggregate outstanding principal amount of Revolving Loans, Swingline Loans and L/C Obligations

-8-


(excluding the undrawn face amounts of outstanding Letters of Credit as of the Seventh Amendment Effective Date) to exceed $10,000,000 at any time during the period from the Seventh Amendment Effective Date through the date on which the Administrative Agent has received the financial statements and compliance certificate required to be delivered pursuant to Sections 8.5(a) and 8.5(h), respectively, for the Fiscal Quarter ending March 31, 2023.

Section 3.

Conditions Precedent.

The effectiveness of this Amendment is subject to the satisfaction of all of the following conditions precedent:

3.1.The Loan Parties, the Required Lenders and the Administrative Agent shall have executed and delivered this Amendment.

3.2.The Borrower shall have paid (or caused to be paid) to the Administrative Agent, for the ratable benefit of the Lenders that have executed and delivered this Amendment as of the Seventh Amendment Effective Date, such fees as have been agreed to between the Borrower and the Administrative Agent in writing as of the Seventh Amendment Effective Date.

3.3.All other legal matters incident to the execution and delivery of this Amendment shall be satisfactory to the Administrative Agent and its counsel.

Section 4.

Representations.

In order to induce the Administrative Agent and the Required Lenders to execute and deliver this Amendment, the Borrower hereby represents to the Administrative Agent and the Lenders that as of the date hereof (a) the representations and warranties set forth in Section 6 of the Credit Agreement (as amended hereby) are and shall be and remain true and correct (except that the representations contained in Section 6.5 shall be deemed to refer to the most recent financial statements of the Borrower delivered to the Administrative Agent), (b) the Borrower is in compliance with the terms and conditions of the Credit Agreement (as amended or waived hereby) and no Default or Event of Default has occurred and is continuing under the Credit Agreement (as amended hereby) or shall result upon giving effect to this Amendment, (c) each Loan Party has taken all necessary action to authorize it to execute, deliver and perform its obligations under this Amendment in accordance with the terms hereof and to consummate the transactions contemplated hereby, and (d) this Amendment has been duly executed and delivered by the Loan Parties and is the legal, valid and binding obligation of each Loan Party, enforceable in accordance with its terms except to the extent that the enforceability thereof may be limited by applicable bankruptcy, insolvency, reorganization, moratorium or similar laws affecting the enforcement of creditors’ rights generally and by general principles of equity.

-9-


Section 5.

Release.

5.1.In consideration of the agreements of the Administrative Agent, the L/C Issuer and the Lenders contained herein and for other good and valuable consideration, the receipt and sufficiency of which are hereby acknowledged, each Loan Party, on behalf of itself and its successors and assigns, and its present and former members, managers, shareholders, affiliates, subsidiaries, divisions, predecessors, directors, officers, attorneys, employees, agents, legal representatives and other representatives (the Loan Parties and all such other Persons being hereinafter referred to collectively as the "Releasing Parties" and individually as a "Releasing Party"), hereby absolutely, unconditionally and irrevocably releases, remises and forever discharges the Administrative Agent, the L/C Issuer and each Lender, and each of their respective successors and assigns, and their respective present and former shareholders, members, managers, affiliates, subsidiaries, divisions, predecessors, directors, officers, investment managers, attorneys, employees, agents, legal representatives and other representatives (the Administrative Agent, Lenders and all such other Persons being hereinafter referred to collectively as the "Releasees" and individually as a "Releasee"), of and from any and all demands, actions, causes of action, suits, damages and any and all other claims, counterclaims, defenses, rights of setoff, demands and liabilities whatsoever (individually, a "Claim" and collectively, "Claims") of every kind and nature, known or unknown, suspected or unsuspected, at law or in equity, which any Releasing Party or any of its successors, assigns, or other legal representatives may now or hereafter own, hold, have or claim to have against the Releasees or any of them for, upon, or by reason of any circumstance, action, cause or thing whatsoever which arises at any time on or prior to the date of this Amendment, including, without limitation, for or on account of, or in relation to, or in any way in connection with this Amendment, the Credit Agreement, any of the other Loan Documents or any of the transactions hereunder or thereunder.  Releasing Parties hereby represent to the Releasees that they have not assigned or transferred any interest in any Claims against any Releasee prior to the date hereof.

5.2.Each Loan Party understands, acknowledges and agrees that the release set forth above may be pleaded as a full and complete defense to any Claim and may be used as a basis for an injunction against any action, suit or other proceeding which may be instituted, prosecuted or attempted in breach of the provisions of such release.

5.3.Each Loan Party agrees that no fact, event, circumstance, evidence or transaction which could now be asserted or which may hereafter be discovered will affect in any manner the final, absolute and unconditional nature of the release set forth above.

-10-


Section 6.

Miscellaneous.

6.1.The Loan Parties heretofore executed and delivered to the Administrative Agent the Security Agreement and certain other Collateral Documents.  The Loan Parties hereby acknowledge and agree that the Liens created and provided for by the Collateral Documents continue to secure, among other things, the Secured Obligations arising under the Credit Agreement as amended hereby; and the Collateral Documents and the rights and remedies of the Administrative Agent and the Lenders thereunder, the obligations of the Loan Parties thereunder, and the Liens created and provided for thereunder remain in full force and effect and shall not be affected, impaired or discharged hereby.  Nothing herein contained shall in any manner affect or impair the priority of the liens and security interests created and provided for by the Collateral Documents as to the indebtedness which would be secured thereby prior to giving effect to this Amendment.

6.2.Except as specifically amended or waived herein, the Credit Agreement shall continue in full force and effect in accordance with its original terms.  Each of the Guarantors reaffirm their Guaranties under Section 11 of the Credit Agreement.  Reference to this specific Amendment need not be made in the Credit Agreement, the Notes, or any other instrument or document executed in connection therewith, or in any certificate, letter or communication issued or made pursuant to or with respect to the Credit Agreement, any reference in any of such items to the Credit Agreement being sufficient to refer to the Credit Agreement as amended or waived hereby.  

6.3.Subject to Section 13.4(a) of the Credit Agreement, the Borrower agrees to pay on demand all costs and expenses of or incurred by the Administrative Agent in connection with the negotiation, preparation, execution and delivery of this Amendment, including the fees and expenses of counsel for the Administrative Agent.

6.4.This Amendment may be executed in any number of counterparts, and by the different parties on different counterpart signature pages, all of which taken together shall constitute one and the same agreement.  Any of the parties hereto may execute this Amendment by signing any such counterpart and each of such counterparts shall for all purposes be deemed to be an original.  Delivery of a counterpart hereof by facsimile transmission or by e-mail transmission of an Adobe portable document format file (also known as a “PDF” file) shall be effective as delivery of a manually executed counterpart hereof.  The words “execution,” “signed,” “signature,” and words of like import in this Amendment shall be deemed to include electronic signatures or electronic records, each of which shall be of the same legal effect, validity or enforceability as a manually executed signature or the use of a paper-based recordkeeping system, as the case may be, to the extent and as provided for in any applicable law, including the Federal Electronic Signatures in Global and National Commerce Act, the New York State Electronic Signatures and Records Act, or any other similar state laws based on the Uniform Electronic Transactions Act.  This Amendment shall be construed and determined in accordance with the laws of the State of New York (including Section 5-1401 and Section 5-1402 of the General Obligations law of the State of New York) without regard to conflicts of law principles that would require application of the laws of another jurisdiction.

-11-


[Signature Pages to Follow]

-12-


This Seventh Amendment to Amended and Restated Credit Agreement is entered into as of the date and year first above written.

“Borrower”

Willdan Group, Inc.

By

/s/ Thomas D. Brisbin

Name:

Thomas D. Brisbin

Title:

Chief Executive Officer

“Guarantors”

Electrotec of NY Electrical Inc.

Public Agency Resources

Willdan Energy Solutions

Willdan Engineering

Willdan Financial Services

Willdan Lighting & Electric, Inc.

Willdan Lighting & Electric of California

Willdan Lighting & Electric of Washington, Inc.

Abacus Resource Management Company

Integral Analytics, Inc.

Energy and Environmental Economics, Inc.

Willdan Energy Co.

Enerpath Services, Inc.

By

/s/ Thomas D. Brisbin

Name:

Thomas D. Brisbin

Title:

Chairman of the Board

[Signature Page to Seventh Amendment to Amended and Restated Credit Agreement]


“Guarantors”

Genesys Engineering, P.C.

By

/s/ Vanessa Munoz

Name:

Vanessa Munoz

Title:

Vice President

[Signature Page to Seventh Amendment to Amended and Restated Credit Agreement]


“Administrative Agent” and “Lenders”

BMO Harris Bank N.A., as a Lender and as Administrative Agent

By

/s/ Maria Wisniewski

Name:

Maria Wisniewski

Title:

Senior Vice President

[Signature Page to Seventh Amendment to Amended and Restated Credit Agreement]


“Lenders”

Bank of America, N.A., as a Lender

By

/s/ Mary Beatty

Name:

Mary Beatty

Title:

Sr. Vice President

[Signature Page to Seventh Amendment to Amended and Restated Credit Agreement]


“Lenders”

CITIBANK, N.A., as a Lender

By

/s/ Benjamin Schwartz

Name:

Benjamin Schwartz

Title:

Attorney-in-Fact

[Signature Page to Seventh Amendment to Amended and Restated Credit Agreement]


“Lenders”

U.S. Bank National Association, as a Lender

By

/s/ James P. Cecil

Name:

James P. Cecil

Title:

Senior Vice President

[Signature Page to Seventh Amendment to Amended and Restated Credit Agreement]


“Lenders”

MUFG Union Bank, N.A., as a Lender

By

/s/ Lance Zediker

Name:

Lance Zediker

Title:

Director

[Signature Page to Seventh Amendment to Amended and Restated Credit Agreement]


EX-31.1 3 wldn-20220930xex31d1.htm EX-31.1

Exhibit 31.1

SECTION 302 CERTIFICATION OF CHIEF EXECUTIVE OFFICER

I, Thomas D. Brisbin, certify that:

1.            I have reviewed this quarterly report on Form 10-Q of Willdan Group, Inc.;

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

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

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

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

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

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

d)           Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

5.            The registrant’s other certifying officer(s) 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: November 3, 2022

(Prin

By:

/s/ THOMAS D. BRISBIN

Thomas D. Brisbin

Chief Executive Officer

(Principal Executive Officer)


EX-31.2 4 wldn-20220930xex31d2.htm EX-31.2

Exhibit 31.2

SECTION 302 CERTIFICATION OF CHIEF FINANCIAL OFFICER

I, Creighton K. Early, certify that:

1.

I have reviewed this quarterly report on Form 10-Q of Willdan Group, Inc.;

2.

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

3.

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

4.

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

a)

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

b)

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

c)

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

d)

Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

5.

The registrant’s other certifying officer(s) 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: November 3, 2022

By:

/s/ CREIGHTON K. EARLY

Creighton K. Early

Chief Financial Officer and Vice President

(Principal Financial Officer)


EX-32.1 5 wldn-20220930xex32d1.htm EX-32.1

Exhibit 32.1

Certification of Chief Executive Officer and Chief Financial Officer Pursuant to 18 U.S.C. 1350,

as Adopted Pursuant to § 906 of the Sarbanes-Oxley Act of 2002

In connection with the Quarterly Report on Form 10-Q of Willdan Group, Inc. (the “Company”) for the quarterly period ended September 30, 2022, as filed with the Securities and Exchange Commission on the date hereof (the “Report”), Thomas D. Brisbin, as Chief Executive Officer of the Company, and Creighton K. Early, as Chief Financial Officer of the Company, each hereby certifies, pursuant to 18 U.S.C. § 1350, as adopted pursuant to § 906 of the Sarbanes-Oxley Act of 2002, that, to the best of his or her 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.

By:

/s/ THOMAS D. BRISBIN

Thomas D. Brisbin

Chief Executive Officer

(Principal Executive Officer)

November 3, 2022

By:

/s/ CREIGHTON K. EARLY

Creighton K. Early

Chief Financial Officer and Vice President

(Principal Financial Officer)

November 3, 2022

This certification accompanies the Report pursuant to § 906 of the Sarbanes-Oxley Act of 2002 and shall not, except to the extent required by the Sarbanes-Oxley Act of 2002, be deemed filed by the Company for purposes of § 18 of the Securities Exchange Act of 1934, as amended. A signed original of this written statement required by § 906 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission or its staff upon request.


EX-101.SCH 6 wldn-20220930.xsd EX-101.SCH 00100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 40402 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Tabular Disclosure (Details) link:presentationLink link:calculationLink link:definitionLink 40404 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 40408 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 40601 - Disclosure - DEBT OBLIGATIONS - Composition (Details) link:presentationLink link:calculationLink link:definitionLink 40602 - Disclosure - DEBT OBLIGATIONS - Classification (Details) link:presentationLink link:calculationLink link:definitionLink 40702 - Disclosure - LEASES - Lease Expense (Details) link:presentationLink link:calculationLink link:definitionLink 40703 - Disclosure - LEASES - Consolidated Balance Sheet (Details) link:presentationLink link:calculationLink link:definitionLink 40707 - Disclosure - LEASES - Operating Leases - Maturities of Lease Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 40708 - Disclosure - LEASES - Operating Leases - Gross Difference (Details) link:presentationLink link:calculationLink link:definitionLink 40709 - Disclosure - LEASES - Finance Leases - Maturities of Lease Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 40710 - Disclosure - LEASES - Finance Leases - Gross Difference (Details) link:presentationLink link:calculationLink link:definitionLink 41101 - Disclosure - EARNINGS PER SHARE (EPS) - Computation (Details) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 00105 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 10101 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY link:presentationLink link:calculationLink link:definitionLink 10201 - Disclosure - RECENT ACCOUNTING PRONOUNCEMENTS link:presentationLink link:calculationLink link:definitionLink 10301 - Disclosure - REVENUES link:presentationLink link:calculationLink link:definitionLink 10401 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA link:presentationLink link:calculationLink link:definitionLink 10501 - Disclosure - DERIVATIVE FINANCIAL INSTRUMENTS link:presentationLink link:calculationLink link:definitionLink 10601 - Disclosure - DEBT OBLIGATIONS link:presentationLink link:calculationLink link:definitionLink 10701 - Disclosure - LEASES link:presentationLink link:calculationLink link:definitionLink 10801 - Disclosure - COMMITMENTS AND VARIABLE INTEREST ENTITIES link:presentationLink link:calculationLink link:definitionLink 10901 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION link:presentationLink link:calculationLink link:definitionLink 11001 - Disclosure - INCOME TAXES link:presentationLink link:calculationLink link:definitionLink 11101 - Disclosure - EARNINGS PER SHARE (EPS) link:presentationLink link:calculationLink link:definitionLink 11201 - Disclosure - CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 11301 - Disclosure - SUBSEQUENT EVENTS link:presentationLink link:calculationLink link:definitionLink 20102 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY (Policies) link:presentationLink link:calculationLink link:definitionLink 20202 - Disclosure - RECENT ACCOUNTING PRONOUNCEMENTS (Policies) link:presentationLink link:calculationLink link:definitionLink 20302 - Disclosure - REVENUES (Policies) link:presentationLink link:calculationLink link:definitionLink 30303 - Disclosure - REVENUES (Tables) link:presentationLink link:calculationLink link:definitionLink 30403 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA (Tables) link:presentationLink link:calculationLink link:definitionLink 30603 - Disclosure - DEBT OBLIGATIONS (Tables) link:presentationLink link:calculationLink link:definitionLink 30703 - Disclosure - LEASES (Tables) link:presentationLink link:calculationLink link:definitionLink 30903 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION (Tables) link:presentationLink link:calculationLink link:definitionLink 31103 - Disclosure - EARNINGS PER SHARE (EPS) (Tables) link:presentationLink link:calculationLink link:definitionLink 40102 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY - Fiscal Years (Details) link:presentationLink link:calculationLink link:definitionLink 40103 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY - Historical and Current Impact of Covid-19 (Details) link:presentationLink link:calculationLink link:definitionLink 40201 - Disclosure - RECENT ACCOUNTING PRONOUNCEMENTS (Details) link:presentationLink link:calculationLink link:definitionLink 40302 - Disclosure - REVENUES - General Information (Details) link:presentationLink link:calculationLink link:definitionLink 40401 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accounts Receivable (Details) link:presentationLink link:calculationLink link:definitionLink 40405 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 40406 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Gross Amounts and Accumulated Amortization (Details) link:presentationLink link:calculationLink link:definitionLink 40407 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Amortization Period (Details) link:presentationLink link:calculationLink link:definitionLink 40410 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Developed Technology (Details) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - DERIVATIVE FINANCIAL INSTRUMENTS (Details) link:presentationLink link:calculationLink link:definitionLink 40603 - Disclosure - DEBT OBLIGATIONS - Credit Facilities (Details) link:presentationLink link:calculationLink link:definitionLink 40701 - Disclosure - LEASES - General information (Details) link:presentationLink link:calculationLink link:definitionLink 40706 - Disclosure - LEASES - Supplemental Cash Flow Information (Details) link:presentationLink link:calculationLink link:definitionLink 40801 - Disclosure - COMMITMENTS AND VARIABLE INTEREST ENTITIES - Employee Benefit Plans (Details) link:presentationLink link:calculationLink link:definitionLink 40902 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Intersegment Sales (Details) link:presentationLink link:calculationLink link:definitionLink 40903 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Statement of Operations (Details) link:presentationLink link:calculationLink link:definitionLink 40904 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Assets (Details) link:presentationLink link:calculationLink link:definitionLink 40905 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Disaggregation of Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 40907 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Concentration Risk (Details) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - INCOME TAXES - Valuation Allowance (Details) link:presentationLink link:calculationLink link:definitionLink 41004 - Disclosure - INCOME TAXES - Examinations (Details) link:presentationLink link:calculationLink link:definitionLink 41102 - Disclosure - EARNINGS PER SHARE (EPS) - Antidilutive Securities (Details) link:presentationLink link:calculationLink link:definitionLink 41301 - Disclosure - SUBSEQUENT EVENTS (Details) link:presentationLink link:calculationLink link:definitionLink 40101 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY - Segment Information (Details) link:presentationLink link:calculationLink link:definitionLink 40301 - Disclosure - REVENUES - Segment Information (Details) link:presentationLink link:calculationLink link:definitionLink 40403 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Amortization Expense (Details) link:presentationLink link:calculationLink link:definitionLink 40409 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - In-process Research and Technology Reclassified (Details) link:presentationLink link:calculationLink link:definitionLink 40704 - Disclosure - LEASES - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 40705 - Disclosure - LEASES - Rent Expense (Details) link:presentationLink link:calculationLink link:definitionLink 40802 - Disclosure - COMMITMENTS AND VARIABLE INTEREST ENTITIES - Variable Interest Entities (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Information (Details) link:presentationLink link:calculationLink link:definitionLink 40906 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Geographical Information (Details) link:presentationLink link:calculationLink link:definitionLink 41002 - Disclosure - INCOME TAXES - Uncertain Tax Positions (Details) link:presentationLink link:calculationLink link:definitionLink 41003 - Disclosure - INCOME TAXES - Income Tax Expense (Benefit) (Details) link:presentationLink link:calculationLink link:definitionLink 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 wldn-20220930_cal.xml EX-101.CAL EX-101.DEF 8 wldn-20220930_def.xml EX-101.DEF EX-101.LAB 9 wldn-20220930_lab.xml EX-101.LAB EX-101.PRE 10 wldn-20220930_pre.xml EX-101.PRE XML 11 R1.htm IDEA: XBRL DOCUMENT v3.22.2.2
Document and Entity Information - shares
9 Months Ended
Sep. 30, 2022
Nov. 02, 2022
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Transition Report false  
Document Period End Date Sep. 30, 2022  
Entity File Number 001-33076  
Entity Registrant Name WILLDAN GROUP, INC.  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 14-1951112  
Entity Address, Address Line One 2401 East Katella Avenue  
Entity Address, Address Line Two Suite 300  
Entity Address, City or Town Anaheim  
Entity Address, Postal Zip Code 92806  
Entity Address, State or Province CA  
City Area Code 800  
Local Phone Number 424-9144  
Title of 12(b) Security Common Stock, par value $0.01 per share  
Trading Symbol WLDN  
Security Exchange Name NASDAQ  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Accelerated Filer  
Entity Small Business false  
Entity Emerging Growth Company false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   13,294,922
Current Fiscal Year End Date --12-30  
Document Fiscal Period Focus Q3  
Document Fiscal Year Focus 2022  
Entity Central Index Key 0001370450  
Amendment Flag false  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.22.2.2
CONDENSED CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Current assets:    
Cash and cash equivalents $ 8,818 $ 11,221
Accounts receivable, net of allowance for doubtful accounts of $756 and $1,115 at September 30, 2022 and December 31, 2021, respectively 60,376 67,211
Contract assets 74,924 59,288
Other receivables 5,112 6,267
Prepaid expenses and other current assets 4,891 4,972
Total current assets 154,121 148,959
Equipment and leasehold improvements, net 21,147 16,757
Goodwill 130,124 130,124
Right-of-use assets 12,715 15,177
Other intangible assets, net 44,182 52,713
Other assets 11,862 13,843
Deferred income taxes, net 20,960 16,849
Total assets 395,111 394,422
Current liabilities:    
Accounts payable 23,487 36,672
Accrued liabilities 50,996 35,680
Contingent consideration payable 2,491 10,206
Contract liabilities 12,163 13,499
Notes payable 15,510 15,036
Finance lease obligations 970 539
Lease liability 4,889 5,575
Total current liabilities 110,506 117,207
Contingent consideration payable   832
Notes payable 93,912 85,538
Finance lease obligations, less current portion 1,657 778
Lease liability, less current portion 8,747 10,768
Other noncurrent liabilities 78 78
Total liabilities 214,900 215,201
Commitments and contingencies
Stockholders' equity:    
Preferred stock, $0.01 par value, 10,000 shares authorized, no shares issued and outstanding
Common stock, $0.01 par value, 40,000 shares authorized; 13,297 and 12,804 shares issued and outstanding at September 30, 2022 and December 31, 2021, respectively 133 128
Additional paid-in capital 176,002 167,032
Accumulated other comprehensive loss   (38)
Retained earnings 4,076 12,099
Total stockholders' equity 180,211 179,221
Total liabilities and stockholders' equity $ 395,111 $ 394,422
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.22.2.2
CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Accounts receivable, allowance for doubtful accounts    
Accounts receivable, allowance for doubtful accounts $ 756 $ 1,115
Preferred stock    
Preferred stock, par value (in dollars per share) $ 0.01 $ 0.01
Preferred stock, shares authorized (in shares) 10,000,000 10,000,000
Preferred stock, shares issued (in shares) 0 0
Preferred stock, shares outstanding (in shares) 0 0
Common stock    
Common stock, par value (in dollars per share) $ 0.01 $ 0.01
Common stock, shares authorized (in shares) 40,000,000 40,000,000
Common stock, shares issued (in shares) 13,297,000 12,804,000
Common stock, shares outstanding (in shares) 13,297,000 12,804,000
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.22.2.2
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Sep. 30, 2022
Oct. 01, 2021
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME        
Contract revenue $ 121,399 $ 98,297 $ 315,882 $ 261,537
Direct costs of contract revenue (inclusive of directly related depreciation and amortization):        
Salaries and wages 21,420 16,346 61,514 48,532
Subcontractor services and other direct costs 62,457 43,824 153,896 111,860
Total direct costs of contract revenue 83,877 60,170 215,410 160,392
General and administrative expenses:        
Salaries and wages, payroll taxes and employee benefits 20,373 19,374 60,169 57,530
Facilities and facility related 2,228 2,351 6,999 7,373
Stock-based compensation 1,607 4,210 6,626 14,349
Depreciation and amortization 4,405 4,267 13,240 12,678
Other 9,664 6,482 25,099 19,033
Total general and administrative expenses 38,277 36,684 112,133 110,963
Income (Loss) from operations (755) 1,443 (11,661) (9,818)
Other income (expense):        
Interest expense, net (1,435) (937) (3,216) (3,100)
Other, net 740 98 1,266 34
Total other expense, net (695) (839) (1,950) (3,066)
Income (Loss) before income taxes (1,450) 604 (13,611) (12,884)
Income tax (benefit) expense (1,526) (236) (5,588) (5,357)
Net income (loss) 76 840 (8,023) (7,527)
Other comprehensive income (loss):        
Unrealized gain (loss) on derivative contracts, net of tax   111 38 343
Comprehensive income (loss) $ 76 $ 951 $ (7,985) $ (7,184)
Earnings (loss) per share:        
Basic (in dollars per share) $ 0.01 $ 0.07 $ (0.62) $ (0.61)
Diluted (in dollars per share) $ 0.01 $ 0.06 $ (0.62) $ (0.61)
Weighted-average shares outstanding:        
Basic (in shares) 13,110 12,606 12,971 12,391
Diluted (in shares) 13,360 13,141 12,971 12,391
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.22.2.2
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)
shares in Thousands, $ in Thousands
Common Stock
Additional Paid-in Capital
Accumulated Other Comprehensive Income (Loss)
Retained Earnings
Total
Balances at Jan. 01, 2021 $ 122 $ 149,014 $ (488) $ 20,516 $ 169,164
Balances (in shares) at Jan. 01, 2021 12,160        
Increase (Decrease) in Stockholders' Equity          
Shares of common stock issued in connection with employee stock purchase plan $ 1 1,384     1,385
Shares of common stock issued in connection with employee stock purchase plan (in shares) 66        
Shares of common stock issued in connection with incentive stock plan   527     527
Shares of common stock issued in connection with incentive stock plan (in shares) 27        
Shares used to pay taxes on stock grants   (12)     (12)
Issuance of restricted stock award and units $ 2 (3)     (1)
Issuance of restricted stock award and units (in shares) 255        
Stock-based compensation expense   4,206     4,206
Net income (loss)       (3,766) (3,766)
Net unrealized gain on derivative contracts     128   128
Balances at Apr. 02, 2021 $ 125 155,116 (360) 16,750 171,631
Balances (in shares) at Apr. 02, 2021 12,508        
Balances at Jan. 01, 2021 $ 122 149,014 (488) 20,516 169,164
Balances (in shares) at Jan. 01, 2021 12,160        
Increase (Decrease) in Stockholders' Equity          
Net income (loss)         (7,527)
Balances at Oct. 01, 2021 $ 128 164,642 (145) 12,989 177,614
Balances (in shares) at Oct. 01, 2021 12,789        
Balances at Apr. 02, 2021 $ 125 155,116 (360) 16,750 171,631
Balances (in shares) at Apr. 02, 2021 12,508        
Increase (Decrease) in Stockholders' Equity          
Shares of common stock issued in connection with incentive stock plan $ 1 850     851
Shares of common stock issued in connection with incentive stock plan (in shares) 77        
Shares used to pay taxes on stock grants $ (1) (3,104)     (3,105)
Shares used to pay taxes on stock grants (in shares) (79)        
Issuance of restricted stock award and units $ 2 (2)      
Issuance of restricted stock award and units (in shares) 207        
Stock-based compensation expense   5,933     5,933
Net income (loss)       (4,601) (4,601)
Net unrealized gain on derivative contracts     104   104
Balances at Jul. 02, 2021 $ 127 158,793 (256) 12,149 170,813
Balances (in shares) at Jul. 02, 2021 12,713        
Increase (Decrease) in Stockholders' Equity          
Shares of common stock issued in connection with employee stock purchase plan $ 1 1,270     1,271
Shares of common stock issued in connection with employee stock purchase plan (in shares) 40        
Shares of common stock issued in connection with incentive stock plan   369     369
Shares of common stock issued in connection with incentive stock plan (in shares) 35        
Issuance of restricted stock award and units (in shares) 1        
Stock-based compensation expense   4,210     4,210
Net income (loss)       840 840
Net unrealized gain on derivative contracts     111   111
Balances at Oct. 01, 2021 $ 128 164,642 (145) 12,989 177,614
Balances (in shares) at Oct. 01, 2021 12,789        
Balances at Dec. 31, 2021 $ 128 167,032 (38) 12,099 $ 179,221
Balances (in shares) at Dec. 31, 2021 12,804       12,804
Increase (Decrease) in Stockholders' Equity          
Shares of common stock issued in connection with employee stock purchase plan $ 1 1,560     $ 1,561
Shares of common stock issued in connection with employee stock purchase plan (in shares) 52        
Shares of common stock issued in connection with incentive stock plan   23     23
Shares of common stock issued in connection with incentive stock plan (in shares) 4        
Shares used to pay taxes on stock grants   (837)     (837)
Shares used to pay taxes on stock grants (in shares) (27)        
Issuance of restricted stock award and units $ 3 (3)      
Issuance of restricted stock award and units (in shares) 373        
Stock-based compensation expense   3,305     3,305
Net income (loss)       (3,773) (3,773)
Net unrealized gain on derivative contracts     38   38
Balances at Apr. 01, 2022 $ 132 171,080   8,326 179,538
Balances (in shares) at Apr. 01, 2022 13,206        
Balances at Dec. 31, 2021 $ 128 167,032 $ (38) 12,099 $ 179,221
Balances (in shares) at Dec. 31, 2021 12,804       12,804
Increase (Decrease) in Stockholders' Equity          
Net income (loss)         $ (8,023)
Balances at Sep. 30, 2022 $ 133 176,002   4,076 $ 180,211
Balances (in shares) at Sep. 30, 2022 13,297       13,297
Balances at Apr. 01, 2022 $ 132 171,080   8,326 $ 179,538
Balances (in shares) at Apr. 01, 2022 13,206        
Increase (Decrease) in Stockholders' Equity          
Shares used to pay taxes on stock grants   (116)     (116)
Shares used to pay taxes on stock grants (in shares) (5)        
Issuance of restricted stock award and units (in shares) 14        
Stock-based compensation expense   1,714     1,714
Net income (loss)       (4,326) (4,326)
Balances at Jul. 01, 2022 $ 132 172,678   4,000 176,810
Balances (in shares) at Jul. 01, 2022 13,215        
Increase (Decrease) in Stockholders' Equity          
Shares of common stock issued in connection with employee stock purchase plan $ 1 1,475     1,476
Shares of common stock issued in connection with employee stock purchase plan (in shares) 63        
Shares of common stock issued in connection with incentive stock plan   247     247
Shares of common stock issued in connection with incentive stock plan (in shares) 29        
Shares used to pay taxes on stock grants   (5)     (5)
Issuance of restricted stock award and units (in shares) (10)        
Stock-based compensation expense   1,607     1,607
Net income (loss)       76 76
Balances at Sep. 30, 2022 $ 133 $ 176,002   $ 4,076 $ 180,211
Balances (in shares) at Sep. 30, 2022 13,297       13,297
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.22.2.2
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
9 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Cash flows from operating activities:    
Net income (loss) $ (8,023) $ (7,527)
Adjustments to reconcile net income (loss) to net cash provided by (used in) operating activities:    
Depreciation and amortization 13,240 12,678
Deferred income taxes, net (4,111) (3,544)
(Gain) loss on sale/disposal of equipment (67) (37)
Provision for doubtful accounts 230 87
Stock-based compensation 6,626 14,349
Accretion and fair value adjustments of contingent consideration 1,659 860
Changes in operating assets and liabilities, net of effects from business acquisitions:    
Accounts receivable 6,605 (1,892)
Contract assets (15,636) (3,318)
Other receivables 1,155 376
Prepaid expenses and other current assets 256 2,005
Other assets 1,981 (4,557)
Accounts payable (13,185) (17,787)
Accrued liabilities 15,354 5,726
Contract liabilities (1,336) 1,016
Right-of-use assets (245) (145)
Net cash provided by operating activities 4,503 (1,710)
Cash flows from investing activities:    
Purchase of equipment and leasehold improvements (6,969) (4,898)
Proceeds from sale of equipment 75 46
Net cash (used in) provided by investing activities (6,894) (4,852)
Cash flows from financing activities:    
Payments on contingent consideration (10,206) (6,615)
Payments on notes payable (1,577) (1,724)
Proceeds from notes payable   206
Borrowings under term loan facility and line of credit 20,000  
Repayments under term loan facility and line of credit (9,750) (9,750)
Principal payments on finance leases (827) (440)
Proceeds from stock option exercise 270 1,747
Proceeds from sales of common stock under employee stock purchase plan 3,036 2,656
Cash used to pay taxes on stock grants (958) (3,117)
Restricted Stock Award and Units   (1)
Net cash (used in) provided by financing activities (12) (17,038)
Net increase (decrease) in cash and cash equivalents (2,403) (23,600)
Cash and cash equivalents at beginning of period 11,221 28,405
Cash and cash equivalents at end of period 8,818 4,805
Cash paid (received) during the period for:    
Interest 2,790 2,701
Income taxes (1,027) (1,742)
Supplemental disclosures of noncash investing and financing activities:    
(Gain) loss on cash flow hedge valuations, net of tax 38 343
Equipment acquired under finance leases $ 2,137 $ 987
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.22.2.2
ORGANIZATION AND OPERATIONS OF THE COMPANY
9 Months Ended
Sep. 30, 2022
ORGANIZATION AND OPERATIONS OF THE COMPANY  
ORGANIZATION AND OPERATIONS OF THE COMPANY

1. ORGANIZATION AND OPERATIONS OF THE COMPANY

Willdan Group, Inc. (“Willdan” or the “Company”) is a provider of professional, technical and consulting services to utilities, private industry, and public agencies at all levels of government. As resources and infrastructures undergo continuous change, the Company helps organizations and their communities evolve and thrive by providing a wide range of technical services for energy solutions and government infrastructure. Through engineering, program management, policy advisory, and software and data management, the Company designs and delivers trusted, comprehensive, innovative, and proven solutions to improve efficiency, resiliency, and sustainability in energy and infrastructure.

The Company’s broad portfolio of services operates within two financial reporting segments: (1) Energy and (2) Engineering and Consulting. The interfaces and synergies between these segments are important elements of the Company’s strategy to design and deliver trusted, comprehensive, innovative, and proven solutions for its customers.

The accounting policies followed by the Company are set forth in Part II, Item 8, Note 1, Organization and Operations of the Company, of the Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. In the opinion of management, all adjustments necessary to fairly state the Condensed Consolidated Financial Statements have been made. All such adjustments are of a normal, recurring nature. Certain information and footnote disclosures normally included in the Consolidated Financial Statements prepared in accordance with accounting principles generally accepted in the United States (“U.S. GAAP”) have been condensed or omitted pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). These Condensed Consolidated Financial Statements and related notes thereto should be read in conjunction with the Consolidated Financial Statements and the notes thereto included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. The results of operations for interim periods are not necessarily indicative of results to be expected for the full year.

Fiscal Years

The Company operates and reports its annual financial results based on 52 or 53-week periods ending on the Friday closest to December 31. The Company operates and reports its quarterly financial results based on the 13-week period ending on the Friday closest to June 30, September 30, and December 31 and the 13 or 14-week period ending on the Friday closest to March 31, as applicable. Fiscal year 2022, which ends on December 30, 2022, will be comprised of 52 weeks, with all quarters consisting of 13 weeks each. Fiscal year 2021, which ended on December 31, 2021, was comprised of 52 weeks, with all quarters consisting of 13 weeks each. All references to years in the notes to consolidated financial statements represent fiscal years.

Use of Estimates

The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the consolidated financial statements. Estimates also affect the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.

Historical and Current Impact of Covid-19

The coronavirus (“Covid-19”) pandemic and efforts to limit its spread negatively impacted the Company’s operations during its fiscal year 2020 and continued to impact the Company, albeit to a lesser extent, during fiscal year 2021. In California and New York, the states in which the Company has historically derived a majority of its revenue, mandatory shutdown orders were issued in March 2020 followed by phased re-openings that began in May 2020, followed by periods of curtailments as a result of resurgences of Covid-19 cases, and subsequent re-openings through 2020 and 2021. The Company’s largest program for the Los Angeles Department of Water and Power (“LADWP”) resumed in the third quarter of fiscal 2021 and was the Company’s last program suspended due to Covid-19. In addition, through fiscal year 2020 and 2021, none of the Company’s contracts were cancelled due to Covid-19.

Through the current fiscal year 2022, though none of the Company’s current programs are under suspension due to Covid-19 restrictions, certain market segments such as small business customers of major utilities continue to experience lingering impacts of the reduced economic activity due to the Covid-19 related mandates in 2020 and 2021. As of November 2, 2022, none of the Company’s contracts were cancelled as a result of Covid-19.

Asset and liability valuation and other estimates used in preparation of financial statements

As of September 30, 2022, the Company did not have any impairment with respect to goodwill or long-lived assets, including intangible assets. Because the full extent of any impact of a resurgence of the Covid-19 outbreak and efforts to slow its spread are unknown at this time, they could, under certain circumstances, cause impairment and result in a non-cash impairment charge being recorded in future periods. Changes to the estimated future profitability of the business may require that the Company establish an additional valuation allowance against all or some portion of its net deferred tax assets.

Impact on Clients and Subcontractors and Other Risks

The Company primarily works for utilities, municipalities and other public agencies. Should there be a resurgence related to Covid-19, some of these customers could experience significant budget shortfalls for the current year and beyond as a result of the measures taken to mitigate the resurgence effects of the Covid-19 pandemic and/or revenue shortfalls as a result of reduced economic activity. Although none of the Company’s contracts with governmental or public agencies were materially modified during its fiscal year 2020 or fiscal year 2021, these potential budget deficits could result in delayed funding for existing contracts with the Company, postponements of new contracts or price concessions. Further, most of the Company’s clients are not committed to purchase any minimum amount of services, as the Company agreements with them are based on a “purchase order” or “master service agreement” model. As a result, they may discontinue utilizing some or all of the Company’s services with little or no notice.

 In addition, the Company relies on subcontractors and material suppliers to complete a substantial portion of its work, especially in its Energy segment. If the Company’s significant subcontractors and material suppliers suffer significant economic harm and must limit or cease operations or file for bankruptcy as a result of the current economic slowdown, the Company’s subcontractors and material suppliers may not be able to fulfill their contractual obligations satisfactorily and the Company may not have the ability to select its subcontractors and material suppliers of choice for new contracts. If the Company’s subcontractors and material suppliers are not able to fulfill their contractual obligations, it could result in a significant increase in costs for the Company to complete the projects or cause significant delays to the realization of revenues under those projects. The ultimate impact of Covid-19 on the Company’s financial condition and results of operations will depend on all of the factors noted above, including other factors that the Company may not be able to forecast at this time. See the risk factor “The Covid-19 pandemic and health and safety measures intended to slow its spread have adversely affected, and may continue to adversely affect, our business, results of operations and financial condition.” under Part I. Item 1A. “Risk Factors” of the Company’s Annual Report on Form 10-K for the year ended December 31, 2021. While Covid-19 has had an adverse effect on the Company’s business, financial condition and results of operations, the Company is unable to predict the extent or duration of future impacts at this time.

XML 18 R8.htm IDEA: XBRL DOCUMENT v3.22.2.2
RECENT ACCOUNTING PRONOUNCEMENTS
9 Months Ended
Sep. 30, 2022
RECENT ACCOUNTING PRONOUNCEMENTS  
RECENT ACCOUNTING PRONOUNCEMENTS

2. RECENT ACCOUNTING PRONOUNCEMENTS

Accounting Pronouncements Recently Adopted

In March 2020, the FASB issued ASU No. 2020-04, “Reference Rate Reform (Topic 848): facilitation of the Effects of Reference Rate Reform on Financial Reporting” (“ASU 2020-04”). ASU 2020-04 provides optional expedients and exceptions for applying U.S. GAAP to contract modifications and hedging relationships that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. ASU 2020-04 provides, among other things, guidance that modifications of contracts within the scope of Topic 470, Debt, should be accounted for by prospectively adjusting the effective interest rate; modifications of contracts within the scope of Topic 840, Leases, should be accounted for as a continuation of the existing contract; and, changes in the critical terms of hedging relationships, caused by reference rate reform, should not result in the de-designation of the instrument, provided certain criteria are met. In January 2021, the FASB issued ASU No. 2021-01, “Reference Rate Reform (Topic 848) - Scope” (“ASU 2021-01”). ASU 2021-01 clarifies the scope and application of ASU 2020-04 and permits entities, among other things, to elect certain optional expedients and exceptions when accounting for derivative contracts and certain hedging relationships affected by changes in the interest rates used for discounting cash flows. The Company adopted this standard effective March 8, 2022. The Company’s previous exposure to LIBOR rates included its credit facilities and swap agreement. The adoption of this standard did not have a material impact to the Company’s Condensed Consolidated Financial Statements.

XML 19 R9.htm IDEA: XBRL DOCUMENT v3.22.2.2
REVENUES
9 Months Ended
Sep. 30, 2022
REVENUES  
REVENUES

3. REVENUES

The Company enters into contracts with its clients that contain various types of pricing provisions, including fixed price, time-and-materials, and unit-based provisions. The Company recognizes revenues in accordance with ASU 2014-09, Revenue from Contracts with Customer, codified as ASC Topic 606 and the related amendments (collectively “ASC 606”). As such, the Company identifies a contract with a customer, identifies the performance obligations in the contract, determines the transaction price, allocates the transaction price to each performance obligation in the contract and recognizes revenues when (or as) the Company satisfies a performance obligation.

The following table reflects the Company’s two reportable segments and the types of contracts that each most commonly enters into for revenue generating activities.

Segment

Contract Type

Revenue Recognition Method

Time-and-materials

Time-and-materials

Energy

Unit-based

Unit-based

Software license

Unit-based

Fixed price

Percentage-of-completion

Time-and-materials

Time-and-materials

Engineering and Consulting

Unit-based

Unit-based

Fixed price

Percentage-of-completion

Revenue on the vast majority of the Company’s contracts is recognized over time because of the continuous transfer of control to the customer. Revenue on fixed price contracts is recognized on the percentage-of-completion method based generally on the ratio of direct costs incurred-to-date to estimated total direct costs at completion. The Company uses the percentage-of-completion method to better match the level of work performed at a certain point in time in relation to the effort that will be required to complete a project. In addition, the percentage-of-completion method is a common method of revenue recognition in the Company’s industry.

Many of the Company’s fixed price contracts involve a high degree of subcontracted fixed price effort and are relatively short in duration, thereby lowering the risks of not properly estimating the percent complete. Revenue on time-and-materials and unit-based contracts is recognized as the work is performed in accordance with the specific rates and terms of the contract. The Company recognizes revenues for time-and-materials contracts based upon the actual hours incurred during a reporting period at contractually agreed upon rates per hour and also includes in revenue all reimbursable costs incurred during a reporting period. Certain of the Company’s time-and-materials contracts are subject to maximum contract values and, accordingly, when revenue is expected to exceed the maximum contract value, these contracts are generally recognized under the percentage-of-completion method, consistent with fixed price contracts. For unit-based contracts, the Company recognizes the contract price of units of a basic production product as revenue when the production product is delivered during a period. Revenue for amounts that have been billed but not earned is deferred, and such deferred revenue is referred to as contract liabilities in the accompanying condensed consolidated balance sheets. The Company also derives revenue from software licenses and professional services and maintenance fees. In accordance with ASC 606, the Company performs an assessment of each contract to identify the performance obligations, determine the overall transaction price for the contract, allocate the transaction price to the performance obligations, and recognize the revenue when the performance obligations are satisfied. The Company utilizes the residual approach by which it estimates the standalone selling price by reference to the total transaction price less the sum of the observable standalone selling prices of other goods or services promised in the contract. The software license revenue is typically recognized at a point in time when control is transferred to the client, which is defined as the point in time when the client can use and benefit from the license. The software license is delivered before related services are provided and is functional without services, updates, or technical support. Related professional services include training and support services in which the standalone selling price is determined based on an input measure of hours incurred to total estimated hours and is recognized over time, usually which is the life of the contract.

To determine the proper revenue recognition method for contracts, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined contract should be accounted for as one performance obligation. With respect to the Company’s contracts, it is rare that multiple contracts should be combined into a single performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or separate a single contract into multiple performance obligations could change the amount of revenue and profit recorded in a given period. Contracts are considered to have a single performance obligation if the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts, which is mainly because the Company provides a significant service of integrating a complex set of tasks and components into a single project or capability.

The Company may enter into contracts that include separate phases or elements. If each phase or element is negotiated separately based on the technical resources required and/or the supply and demand for the services being provided, the Company evaluates if the contracts should be segmented. If certain criteria are met, the contracts would be segmented which could result in revenues being assigned to the different elements or phases with different rates of profitability based on the relative value of each element or phase to the estimated total contract revenue. Segmented contracts may comprise up to approximately 2.0% to 3.0% of the Company’s consolidated contract revenue.

Contracts that cover multiple phases or elements of the project or service lifecycle (development, construction and maintenance and support) may be considered to have multiple performance obligations even when they are part of a single contract. For contracts with multiple performance obligations, the Company allocates the transaction price to each performance obligation using the best estimate of the standalone selling price of each distinct good or service in the contract. For the periods presented, the value of the separate performance obligations under contracts with multiple performance obligations (generally measurement and verification tasks under certain energy performance contracts) were not material. In cases where the Company does not provide the distinct good or service on a standalone basis, the primary method used to estimate standalone selling price is the expected cost plus a margin approach, under which the Company forecasts the Company’s expected costs of satisfying a performance obligation and then adds an appropriate margin for the distinct good or service.

The Company provides quality of workmanship warranties to customers that are included in the sale and are not priced or sold separately or do not provide customers with a service in addition to assurance of compliance with agreed-upon specifications and industry standards. The Company does not consider these types of warranties to be separate performance obligations.

In some cases, the Company has a master service or blanket agreement with a customer under which each task order releases the Company to perform specific portions of the overall scope in the service contract. Each task order is typically accounted for as a separate contract because the task order establishes the enforceable rights and obligations, and payment terms.

Under ASC 606, variable consideration should be considered when determining the transaction price and estimates should be made for the variable consideration component of the transaction price, as well as assessing whether an estimate of variable consideration is constrained. For certain of the Company’s contracts, variable consideration can arise from modifications to the scope of services resulting from unapproved change orders or customer claims. Variable consideration is included in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. The Company estimates of variable consideration and determination of whether to include estimated amounts in the transaction price are based largely on assessments of legal enforceability, the Company’s performance, and all information (historical, current and forecasted) that is reasonably available to the Company.

Due to the nature of the work required to be performed on many of the Company’s performance obligations, the estimation of total revenue and cost at completion is complex, subject to many variables and requires significant judgment. As a significant change in one or more of these estimates could affect the profitability of the Company’s contracts, the Company reviews and updates the Company’s contract-related estimates regularly through a company-wide disciplined project review process in which management reviews the progress and execution of the Company’s performance obligations and the estimate at completion (“EAC”). As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule and the related changes in estimates of revenues and costs. Management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the cost and availability of materials, the performance of subcontractors, and the availability and timing of funding from the customer, among other variables.

The Company recognizes adjustments in estimated profit on contracts under the cumulative catch-up method. Under this method, the impact of the adjustment on profit recorded to date is recognized in the period the adjustment is identified. Revenue and profit in future periods of contract performance is recognized using the adjusted estimate. If at any time the estimate of contract profitability indicates an anticipated loss on the contract, the Company recognizes the full amount of estimated loss in the period it is identified.

Contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new rights or obligations or changes the existing enforceable rights or obligations. Most of the Company’s contract modifications are for goods or services that are not distinct from existing contracts due to the significant integration provided in the context of the contract and are accounted for as if they were part of the original contract. The effect of a contract modification that is not distinct from the existing contract on the transaction price and the Company’s measure of progress for the performance obligation to which it relates is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis.

For contract modifications that result in the promise to deliver goods or services that are distinct from the existing contract and the increase in price of the contract is for the same amount as the standalone selling price of the additional goods or services included in the modification, the Company accounts for such contract modifications as a separate contract.

The Company includes claims to vendors, subcontractors and others as a receivable and a reduction in recognized costs when enforceability of the claim is established by the contract and the amounts are reasonably estimable and probable of being recovered. The amounts are recorded up to the extent of the lesser of the amounts management expects to recover or to costs incurred.

Billing practices are governed by the contract terms of each project based upon costs incurred, achievement of milestones or pre-agreed schedules. Billings do not necessarily correlate with revenue recognized using the percentage-of-completion method of revenue recognition.

Direct costs of contract revenue consist primarily of that portion of technical and nontechnical salaries and wages that has been incurred in connection with revenue producing projects. Direct costs of contract revenue also include production expenses, subcontractor services and other expenses that are incurred in connection with revenue producing projects.

Direct costs of contract revenue exclude that portion of technical and nontechnical salaries and wages related to marketing efforts, vacations, holidays and other time not spent directly generating revenue under existing contracts. Such costs are included in general and administrative expenses. Additionally, payroll taxes, bonuses and employee benefit costs for all Company personnel are included in general and administrative expenses in the accompanying consolidated statements of comprehensive income since no allocation of these costs is made to direct costs of contract revenue. No allocation of facilities costs is made to direct costs of contract revenue. Other companies may classify as direct costs of contract revenue some of the costs that the Company classifies as general and administrative costs. The Company expenses direct costs of contract revenue when incurred.

Included in revenue and costs are all reimbursable costs for which the Company has the risk or on which the fee was based at the time of bid or negotiation. No revenue or cost is recorded for costs in which the Company acts solely in the capacity of an agent and has no risks associated with such costs.

Accounts receivable are carried at original invoice amount less an estimate made for doubtful accounts based upon a review of all outstanding amounts on a quarterly basis. Management determines allowances for doubtful accounts through specific identification of amounts considered to be uncollectible and potential write-offs, plus a non-specific allowance for other amounts for which some potential loss has been determined to be probable based on current and past experience. The Company’s historical credit losses have been minimal with governmental entities and large public utilities, but disputes may arise related to these receivable amounts. Accounts receivable are written off when deemed uncollectible. Recoveries of accounts receivable previously written off are recorded when received.

Retainage, included in contract assets, represents amounts withheld from billings to the Company’s clients pursuant to provisions in the contracts and may not be paid to the Company until specific tasks are completed or the project is completed and, in some instances, for even longer periods. As of September 30, 2022 and December 31, 2021, contract assets included retainage of approximately $7.7 million and $4.5 million, respectively.

XML 20 R10.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA
9 Months Ended
Sep. 30, 2022
SUPPLEMENTAL FINANCIAL STATEMENT DATA  
SUPPLEMENTAL FINANCIAL STATEMENT DATA

4. SUPPLEMENTAL FINANCIAL STATEMENT DATA

Accounts Receivable

From time to time, in connection with factoring agreements, the Company sells trade accounts receivable without recourse to third party purchasers in exchange for cash. During the nine months ended September 30, 2022, the Company did not sell any trade accounts receivable. During the nine months ended October 1, 2021, the Company sold trade accounts receivable and received cash proceeds of $8.0 million. The discounts on the trade accounts receivable sold were $0.8 million and were recorded within “Other, net” in other income (expense) in the condensed consolidated financial statements.

Equipment and Leasehold Improvements

September 30,

December 31,

    

2022

    

2021

(in thousands)

Furniture and fixtures

$

4,065

$

4,070

Computer hardware and software

 

33,085

 

26,425

Leasehold improvements

 

3,083

 

3,011

Equipment under finance leases

 

5,204

 

3,286

Automobiles, trucks, and field equipment

 

3,102

 

3,099

Subtotal

 

48,539

 

39,891

Accumulated depreciation and amortization

 

(27,392)

 

(23,134)

Equipment and leasehold improvements, net

$

21,147

$

16,757

Included in accumulated depreciation and amortization is $0.8 million and $0.6 million of amortization expense related to equipment held under finance leases for the nine months ended September 30, 2022 and for fiscal year 2021, respectively.

Accrued Liabilities

September 30,

December 31,

    

2022

    

2021

(in thousands)

Accrued subcontractor costs

$

34,624

$

19,727

Other

 

5,013

 

2,750

Compensation and payroll taxes

 

3,676

 

2,244

Accrued bonuses

3,606

7,767

Employee withholdings

 

3,396

 

2,665

Accrued workers’ compensation insurance

 

681

 

527

Total accrued liabilities

$

50,996

$

35,680

Goodwill

December 31,

Additional

Additions /

September 30,

    

2021

    

Purchase Cost

    

Adjustments

    

2022

(in thousands)

Reporting Unit:

Energy

$

129,375

$

$

$

129,375

Engineering and Consulting

749

749

$

130,124

$

$

$

130,124

The Company tests for impairment, at a minimum, on an annual basis or earlier when certain events or changes in circumstances indicate that goodwill may more likely than not be impaired. During the quarter ended September 30, 2022, although the Company experienced declines in the market price of its stock, such decreases did not result in the Company’s market capitalization decreasing below book value. Subsequent to the end of the quarter, the Company’s market capitalization based upon its stock price has fluctuated below book value. The fair value of the Company using a market capitalization approach based on the Company’s share price would also include a control premium not reflected in the current share price based on recent transactions that have occurred in the Company’s industry. This indicative fair value exceeded the Company’s book value; therefore, the Company does not believe it is more likely than not that goodwill was impaired as of September 30, 2022.

If there are further decreases in the Company’s stock price for a sustained period or other unfavorable factors, the Company may be required to perform a goodwill impairment assessment, which may result in a recognition of goodwill impairment that could be material to the consolidated financial statements.

Intangible Assets

September 30, 2022

December 31, 2021

Gross

Accumulated

Gross

Accumulated

Amortization

    

Amount

    

Amortization

    

Amount

    

Amortization

    

Period

(in thousands)

(in years)

Finite:

Backlog

$

7,944

$

7,872

$

7,944

$

7,222

1.0

Tradename

 

15,911

 

10,492

 

15,911

 

8,997

 

2.5

-

6.0

Non-compete agreements

1,420

1,420

1,420

1,413

4.0

-

5.0

Developed technology

15,810

11,141

15,500

8,950

8.0

Customer relationships

58,149

24,127

58,149

19,939

5.0

-

8.0

Total finite intangible assets

99,234

55,052

98,924

46,521

In-process research and technology (1)

310

Total intangible assets

$

99,234

$

55,052

$

99,234

$

46,521

(1)In-process research and technology will not be amortized until put into use.

During the nine months ended September 30, 2022, the Company reclassified $0.3 million of in-process research and technology to developed technology and commenced amortization over its estimated useful life.

XML 21 R11.htm IDEA: XBRL DOCUMENT v3.22.2.2
DERIVATIVE FINANCIAL INSTRUMENTS
9 Months Ended
Sep. 30, 2022
DERIVATIVE FINANCIAL INSTRUMENTS  
DERIVATIVE FINANCIAL INSTRUMENTS

5. DERIVATIVE FINANCIAL INSTRUMENTS

From time to time, the Company uses certain interest rate derivative contracts to hedge interest rate exposures on its variable rate debt. The Company’s hedging program is not designated for trading or speculative purposes.

The Company recognizes derivative instruments as either assets or liabilities on the accompanying consolidated balance sheets at fair value. The Company records changes in the fair value (i.e., gains or losses) of the derivatives that have been designated as cash flow hedges in its consolidated balance sheets as accumulated other comprehensive income (loss) and in its condensed consolidated statements of comprehensive (loss) income as a loss or gain on cash flow hedge valuation.

On January 31, 2019, the Company entered into an interest rate swap agreement that the Company designated as cash flow hedge to fix the variable interest rate on a portion of the Company’s Term A Loan (as defined below in Note 6. “Debt Obligations”). The interest rate swap agreement had total notional amount of $35.0 million and had a fixed annual interest rate of 2.47%. The interest rate swap expired on January 31, 2022.

At its expiration, changes in the fair value of the Company’s interest rate swap agreement were immaterial to the Company’s condensed consolidated financial statements and were included in accrued liabilities in the condensed consolidated balance sheet.

At its expiration, the effective portion of the Company’s interest rate swap agreement designated as a cash flow hedge was immaterial to the Company’s condensed consolidated financial statements, and all amounts were reclassified from accumulated other comprehensive income to interest expense.

As of September 30, 2022, the Company had no derivative financial instruments in place.

XML 22 R12.htm IDEA: XBRL DOCUMENT v3.22.2.2
DEBT OBLIGATIONS
9 Months Ended
Sep. 30, 2022
DEBT OBLIGATIONS  
DEBT OBLIGATIONS

6. DEBT OBLIGATIONS

Debt obligations, excluding obligations under finance leases (see Note 7, Leases, below), consisted of the following:

    

September 30,

    

December 31,

2022

2021

(in thousands)

Outstanding borrowings on Term A Loan

$

67,500

$

75,000

Outstanding borrowings on Revolving Credit Facility

Outstanding borrowings on Delayed Draw Term Loan

41,750

24,000

Other debt agreements

583

2,161

Total debt

109,833

101,161

Issuance costs and debt discounts

(411)

(587)

Subtotal

109,422

100,574

Less current portion of long-term debt

 

15,510

 

15,036

Long-term debt portion

$

93,912

$

85,538

Credit Facilities

On June 26, 2019, the Company and certain of its subsidiaries entered into an Amended and Restated Credit Agreement (as amended by the First Amendment, dated as of August 15, 2019, the Second Amendment, dated as of November 6, 2019, the Third Amendment, dated as of May 6, 2020, the Fourth Amendment, dated April 30, 2021, and the Fifth Amendment, dated March 8, 2022, the “Credit Agreement”) with a syndicate of financial institutions as lenders and BMO Harris Bank, N.A. (“BMO”), as administrative agent. The Credit Agreement provides for (i) a $100.0 million secured term loan (the “Term A Loan”), (ii) up to $50.0 million in delayed draw secured term loans (the “Delayed Draw Term Loan”), and (iii) a $50.0 million secured revolving credit facility (the “Revolving Credit Facility” and, collectively with the Term A Loan and the Delayed Draw Term Loan, the “Credit Facilities”), each maturing on June 26, 2024. The Company’s obligations under the Credit Agreement are guaranteed by its present and future domestic subsidiaries, with limited exceptions.

Prior to the Fourth Amendment to the Credit Agreement, dated as of April 30, 2021 (the “Fourth Amendment”), the Credit Agreement required the Company to comply with certain financial covenants, including requiring that the Company maintain a (i) total leverage ratio (the “Leverage Ratio”), defined as the ratio of total funded debt to Adjusted EBITDA (as defined in the Credit Agreement), of 6.00 to 1.00 through June 26, 2020, 7.75 to 1.00 through September 25, 2020, 7.50 to 1.00 through January 1, 2021, 6.25 to 1.00 through April 2, 2021, 4.00 to 1.00 through July 2, 2021, and 3.25 to 1.00 through October 1, 2021 and thereafter and (ii) fixed charge coverage ratio (“FCCR Ratio”), defined as the ratio of Adjusted EBITDA less Unfinanced Capital Expenditures (as defined in the Credit Agreement) to Fixed Charges (as defined in the Credit Agreement), of not less than 1.20 to 1.00, in each case tested quarterly, except during the period from May 6, 2020 until July 2, 2021 (the “Initial Covenant Relief Period”), when the maximum Leverage Ratio was increased and the covenant to maintain a minimum FCCR Ratio was replaced with a covenant to maintain a minimum Adjusted EBITDA (as defined in the Third Amendment). In addition, during the Initial Covenant Relief Period, no delayed draw term loans could be borrowed under the Credit Facilities and the Company was prohibited from engaging in share repurchases or making any Permitted Acquisitions (as defined in the Credit Agreement). Additionally, during the Initial Covenant Relief Period, the aggregate amount of all capital expenditures made by the Company could not exceed $7.0 million, and the Company was prohibited from making any earn-out payments if, after giving effect to such earn-out payment, the Company’s liquidity would be less than $5.0 million or the aggregate amount of all earn-out payments made by the Company during the Initial Covenant Relief Period would exceed $7.0 million.

Pursuant to the Fourth Amendment, the Initial Covenant Relief Period was extended from July 2, 2021 to and including the earlier of (i) April 1, 2022 and (ii) the last day of the fiscal quarter in which the Company delivers an irrevocable election to terminate the covenant relief granted by the Fourth Amendment (the “Second Covenant Relief Period,” and together with the Initial Covenant Relief Period, the “Amended Covenant Relief Period”). The Fourth Amendment also (A) increased the maximum Leverage Ratio the Company was permitted to maintain to 4.50 to 1.00 through June 30, 2021, 5.25 to 1.00 through September 30, 2021, 4.50 to 1.00 through December 31, 2021, 4.25 to 1.00 through March 31, 2022, and 3.25 to 1.00 through June 30, 2022 and thereafter, (B) established the minimum Adjusted EBITDA thresholds (as defined in the Third Amendment) for the remainder of the Amended Covenant Relief Period, (C) removed the previous prohibition during the Initial Covenant Relief Period on the Company’s ability to make delayed draw term loan borrowings, (D) removed the previous prohibition during the Initial Covenant Relief Period on the Company’s ability to make Permitted Acquisitions (as defined in the Credit Agreement) and to purchase, redeem or otherwise acquire the Company’s common stock, in each case, subject to certain conditions, and (E) increased the maximum amount of earn-out payments the Company was permitted to make during the Amended Covenant Relief Period from $7.0 million to $17.0 million, provided that the Company’s liquidity would not be less than $10.0 million after giving effect to such earn-out payment. Additionally, during the remainder of the Amended Covenant Relief Period, the aggregate amount of all capital expenditures made by the Company may not exceed $15.0 million.

In accordance with the Fourth Amendment, borrowings under the Credit Agreement bore interest at all times other than during the Initial Covenant Relief Period, at either a Base Rate or London Inter-Bank Offered Rate (“LIBOR”), each as defined in the Credit Agreement, at the Company’s option, and in each case plus an applicable margin, which applicable margin ranged from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to LIBOR borrowings, depending on the Leverage Ratio; provided, that LIBOR could not be less than 0.00%. The Company also agreed to pay a commitment fee for the unused portion of the Revolving Credit Facility and the delayed draft term loan facility, which ranged from 0.15% to 0.40% per annum depending on the Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the Revolving Credit Facility, which ranged from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Leverage Ratio.

The Credit Agreement includes customary events of default and also contains other customary restrictive covenants including (i) restrictions on the incurrence of additional indebtedness and additional liens on property, (ii) restrictions on permitted acquisitions and other investments and (iii) limitations on asset sales, mergers and acquisitions. Further, the Credit Agreement limits the Company’s payment of future dividends and distributions and share repurchases by the Company. Subject to certain exceptions, borrowings under the Credit Agreement are also subject to mandatory prepayment from (a) any issuances of debt or equity securities, (b) any sale or disposition of assets, (c) insurance and condemnation proceeds (d) representation and warranty insurance proceeds related to insurance policies issued in connection with acquisitions and (e) excess cash flow.

Fifth Amendment to the Credit Agreement

On March 8, 2022, the Company entered into the Fifth Amendment to the Credit Agreement (the “Fifth Amendment”). The Fifth Amendment extended the Amended Covenant Relief Period from March 31, 2022 to and including the earlier of (i) December 30, 2022 and (ii) the last day of the fiscal quarter in which the Company delivers an irrevocable election to terminate the covenant relief granted by the Fifth Amendment (the “Third Covenant Relief Period,” and together with the Amended Covenant Relief Period, the “Extended Covenant Relief Period”).

The Fifth Amendment also (A) amended the minimum Adjusted EBITDA (as defined in the Fifth Amendment) thresholds for the remainder of the Extended Covenant Relief Period, (B) increased the maximum Total Leverage Ratio (as defined in the Credit Agreement) the Company is permitted to maintain through the fiscal quarter ending on December 31, 2022, (C) funded to the Company, on the date of closing, the remaining $20.0 million in available funds from the Delayed Draw Term Loan, and (D) amended the pricing structure of borrowings under the Credit Agreement

from utilizing as a reference rate the LIBOR to utilizing the Secured Overnight Financing Rate (“SOFR”). Additionally, during the remainder of the Covenant Relief Period, the aggregate amount of all capital expenditures made by the Company may not exceed $20.0 million.

 

Pursuant to the Fifth Amendment, during the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.50% with respect to Base Rate borrowings and 1.125% to 2.50% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.45% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.875% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio.

After the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.40% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio.

Sixth Amendment to the Credit Agreement

On August 2, 2022, the Company entered into the Sixth Amendment to the Credit Agreement (the “Sixth Amendment”). The Sixth Amendment increased the purchase money indebtedness and Capitalized Lease Obligations (as defined in the Credit Agreement) permissible limit from $1.5 million to $4.0 million, with no other changes to the Credit Agreement.

As of September 30, 2022, the Company was in compliance with all covenants contained in the Credit Agreement, as amended, other than the minimum Adjusted EBITDA thresholds for the test period ended September 30, 2022. Such non-compliance with the minimum Adjusted EBITDA thresholds for the test period ended September 30, 2022 was subsequently waived by the lenders under the Credit Agreement pursuant to the Seventh Amendment (defined and described in Note 13. “Subsequent Events” below).

Other Debt Agreements

The Company’s other debt agreements are related to financed insurance premiums, a financed software agreement, and a utility customer agreement and are immaterial to the Company’s Condensed Consolidated Financial Statements.

XML 23 R13.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES
9 Months Ended
Sep. 30, 2022
LEASES  
LEASES

7. LEASES

The Company leases certain office facilities under long-term, non-cancellable operating leases that expire at various dates through the year 2027. In addition, the Company is obligated under finance leases for certain furniture and office equipment that expire at various dates through the year 2027.

From time to time, the Company enters into non-cancelable leases for some of its facility and equipment needs. These leases allow the Company to conserve cash by paying a monthly lease rental fee for the use of facilities and equipment rather than purchasing them. The Company’s leases have terms ranging from one to eight years, some of which may include options to extend the leases for up to five years, and some of which may include options to terminate the leases within one year. Currently, all of the Company’s leases contain fixed payment terms. The Company may decide to cancel or terminate a lease before the end of its term, in which case the Company is typically liable to the lessor for the remaining lease payments under the term of the lease. Additionally, all of the Company’s month-to-month leases are cancelable by the Company or the lessor, at any time, and are not included in the Company’s right-of-use asset or lease liability. As of September 30, 2022, the Company had no leases with residual value guarantees. Typically, the Company has purchase options on the equipment underlying its long-term leases. The Company may exercise some of these purchase options when the need for equipment is on-going and the purchase option price is attractive. Nonperformance-related default covenants, cross-default provisions, subjective default provisions and material adverse change clauses contained in material lease agreements, if any, are also evaluated to determine whether those clauses affect lease classification in accordance with “ASC” Topic 842-10-25. Leases are accounted for as operating or financing leases, depending on the terms of the lease.

Financing Leases

The Company leases certain equipment under financing leases. The economic substance of the leases is a financing transaction for acquisition of equipment and leasehold improvements. Accordingly, the right-of-use assets for these leases are included in the balance sheets in equipment and leasehold improvements, net of accumulated depreciation, with a corresponding amount recorded in current portion of financing lease obligations or noncurrent portion of financing lease obligations, as appropriate. The financing lease assets are amortized over the life of the lease or, if shorter, the life of the leased asset, on a straight-line basis and included in depreciation expense. The interest associated with financing lease obligations is included in interest expense.

 

Right-of-use assets

Operating leases are included in right-of-use assets, and current portion of lease liability and noncurrent portion of lease liability, as appropriate. Right-of-use assets and lease liabilities are recognized based on the present value of the future minimum lease payments over the lease term at commencement date. As most of the Company’s leases do not provide an implicit rate to calculate present value, the Company determines this rate by estimating the Company’s incremental borrowing rate at the lease commencement date. The right-of-use asset also includes any lease payments made and initial direct costs incurred at lease commencement and excludes lease incentives. The Company’s lease terms may include options to extend or terminate the lease when it is reasonably certain that it will exercise that option. Lease expense for minimum lease payments is recognized on a straight-line basis over the lease term.

The following is a summary of the Company’s lease expense:

Three Months Ended

Nine Months Ended

September 30,

October 1,

September 30,

October 1,

2022

    

2021

    

2022

    

2021

(in thousands)

(in thousands)

Operating lease cost

$

1,523

$

1,596

$

4,635

$

4,941

Finance lease cost:

Amortization of assets

311

139

799

397

Interest on lease liabilities

22

9

51

22

Total net lease cost

$

1,856

$

1,744

$

5,485

$

5,360

The following is a summary of lease information presented on the Company’s consolidated balance sheet:

September 30,

    

December 31,

2022

2021

(in thousands)

Operating leases:

Right-of-use assets

$

12,715

$

15,177

 

 

Lease liability

$

4,889

$

5,575

Lease liability, less current portion

 

8,747

 

10,768

Total lease liabilities

$

13,636

$

16,343

 

 

Finance leases (included in equipment and leasehold improvements, net):

Equipment and leasehold improvements, net

$

5,204

$

3,286

Accumulated depreciation

 

(2,524)

 

(1,947)

Total equipment and leasehold improvements, net

$

2,680

$

1,339

 

Finance lease obligations

$

970

$

539

Finance lease obligations, less current portion

1,657

778

Total finance lease obligations

$

2,627

$

1,317

Weighted average remaining lease term (in years):

Operating Leases

3.48

3.79

Finance Leases

2.70

2.62

Weighted average discount rate:

Operating Leases

4.16

%

4.28

%

Finance Leases

3.08

%

2.78

%

Rent expense was $1.6 million and $4.9 million for the three and nine months ended September 30, 2022, respectively, as compared to $1.6 million and $5.2 million for the three and nine months ended October 1, 2021, respectively.

The following is a summary of other information and supplemental cash flow information related to finance and operating leases:

Nine Months Ended

September 30,

October 1,

2022

    

2021

(in thousands)

Cash paid for amounts included in the measurement of lease liabilities:

Operating cash flow from operating leases

$

4,879

$

5,115

Operating cash flow from finance leases

51

22

Financing cash flow from finance leases

827

440

Right-of-use assets obtained in exchange for lease liabilities:

Operating leases

$

1,706

$

326

The following is a summary of the maturities of lease liabilities as of September 30, 2022:

    

Operating

    

Finance

 

(in thousands)

Fiscal year:

Remainder of 2022

$

1,542

$

228

2023

 

4,765

 

1,161

2024

 

3,313

887

2025

2,493

303

2026

2,140

 

134

2027 and thereafter

 

453

 

30

Total lease payments

14,706

2,743

Less: Imputed interest

 

(1,070)

(116)

Total lease obligations

 

13,636

2,627

Less: Current obligations

 

4,889

970

Noncurrent lease obligations

$

8,747

$

1,657

The imputed interest for finance lease obligations represents the interest component of finance leases that will be recognized as interest expense in future periods. The financing component for operating lease obligations represents the effect of discounting the operating lease payments to their present value.

XML 24 R14.htm IDEA: XBRL DOCUMENT v3.22.2.2
COMMITMENTS AND VARIABLE INTEREST ENTITIES
9 Months Ended
Sep. 30, 2022
COMMITMENTS AND VARIABLE INTEREST ENTITIES  
COMMITMENTS AND VARIABLE INTEREST ENTITIES

8. COMMITMENTS AND VARIABLE INTEREST ENTITIES

Employee Benefit Plans

The Company has a qualified profit sharing plan pursuant to Code Section 401(a) and qualified cash or deferred arrangement pursuant to Code Section 401(k) covering all employees. Company contributions are made solely at the discretion of the Company’s board of directors.

The Company’s defined contribution plan (the “Plan”) covers employees who have completed three months of service and who have attained 21 years of age. Employees may elect to contribute up to 50% of their compensation limited to the amount allowed by tax laws. The Company elects to make matching contributions equal to 50% of the participants’ contributions to the Plan, up to 6% of the individual participant’s compensation, and subject to a maximum of $3,000 per employee. Under the Plan, the Company’s matching contributions to employee accounts are discretionary.

During the nine months ended September 30, 2022 and October 1, 2021, the Company made matching contributions of $2.0 million and $1.6 million, respectively.

Variable Interest Entities

On March 4, 2016, the Company and the Company’s wholly-owned subsidiary, WES, acquired substantially all of the assets of Genesys and assumed certain specified liabilities of Genesys (collectively, the “Purchase”) pursuant to an Asset Purchase and Merger Agreement, dated as of February 26, 2016 (the “Agreement”), by and among Willdan Group, Inc., WES, WESGEN (as defined below), Genesys and Ronald W. Mineo (“Mineo”) and Robert J. Braun (“Braun” and, together with Mineo, the “Genesys Shareholders”). On March 5, 2016, pursuant to the terms of the Agreement, WESGEN, Inc., a non-affiliated corporation (“WESGEN”), merged (the “Merger” and, together with the Purchase, the “Acquisition”) with Genesys, with Genesys remaining as the surviving corporation. Genesys was acquired to strengthen the Company’s power engineering capability in the northeastern U.S., and also to increase client exposure and experience with universities.

Genesys continues to be a professional corporation organized under the laws of the State of New York, wholly-owned by one or more licensed engineers. Pursuant to New York law, the Company does not own capital stock of Genesys. The Company has entered into an agreement with the Shareholder of Genesys pursuant to which the Shareholder will be prohibited from selling, transferring or encumbering the Shareholder’s ownership interest in Genesys without the Company’s consent. Notwithstanding the Company’s rights regarding the transfer of Genesys’s stock, the Company does not have control over the professional decision making of Genesys’s engineering services. The Company has entered into an administrative services agreement with Genesys pursuant to which WES will provide Genesys with ongoing administrative, operational and other non-professional support services. Genesys pays WES a service fee, which consists of all of the costs incurred by WES to provide the administrative services to Genesys plus ten percent of such costs, as well as any other costs that relate to professional service supplies and personnel costs. As a result of the administrative services agreement, the Company absorbs the expected losses of Genesys through its deferral of Genesys’s service fees owed to WES.

The Company manages Genesys and has the power to direct the activities that most significantly impact Genesys’s performance, in addition to being obligated to absorb expected losses from Genesys. Accordingly, the Company is the primary beneficiary of Genesys and consolidates Genesys as a VIE. In addition, the Company concluded there is no noncontrolling interest related to the consolidation of Genesys because the Company determined that (i) the shareholder of Genesys does not have more than a nominal amount of equity investment at risk, (ii) WES absorbs the expected losses of Genesys through its deferral of Genesys’s service fees owed to WES and the Company has, since entering into the administrative services agreement, had to continuously defer service fees for Genesys, and (iii) the Company believes Genesys will continue to have a shortfall on payment of its service fees for the foreseeable future, leaving no expected residual returns for the shareholder. As of September 30, 2022, the Company had one VIE — Genesys.

XML 25 R15.htm IDEA: XBRL DOCUMENT v3.22.2.2
SEGMENT AND GEOGRAPHICAL INFORMATION
9 Months Ended
Sep. 30, 2022
SEGMENT AND GEOGRAPHICAL INFORMATION  
SEGMENT AND GEOGRAPHICAL INFORMATION

9. SEGMENT AND GEOGRAPHICAL INFORMATION

Segment Information

The Company’s two segments are Energy and Engineering and Consulting, and the Company’s chief operating decision maker, which continues to be its chief executive officer, receives and reviews financial information in this format.

There were no intersegment sales during the three and nine months ended September 30, 2022 and October 1, 2021. The Company’s chief operating decision maker evaluates the performance of each segment based upon income or loss from operations before income taxes. Certain segment asset information including expenditures for long-lived assets has not been presented as it is not reported to or reviewed by the chief operating decision maker. In addition, enterprise-wide service line contract revenue is not included as it is impracticable to report this information for each group of similar services.

Financial information with respect to the reportable segments is as follows:

Engineering

Unallocated

Consolidated

    

Energy

    

& Consulting

    

Corporate

    

Intersegment

    

Total

(in thousands)

Fiscal Three Months Ended September 30, 2022

Contract revenue

$

102,625

$

18,774

$

-

$

-

$

121,399

Depreciation and amortization

4,166

239

-

-

4,405

Interest expense, net

3

-

1,432

-

1,435

Segment profit (loss) before income tax expense

(1,815)

3,473

(3,108)

-

(1,450)

Income tax expense (benefit)

(1,565)

1,781

(1,742)

-

(1,526)

Net income (loss)

(250)

1,692

(1,366)

-

76

Segment assets (1)

336,036

22,630

59,575

(23,130)

395,111

Fiscal Three Months Ended October 1, 2021

Contract revenue

$

81,523

$

16,774

$

-

$

-

$

98,297

Depreciation and amortization

4,023

244

-

-

4,267

Interest expense, net

-

-

937

-

937

Segment profit (loss) before income tax expense

2,138

2,673

(4,207)

-

604

Income tax expense (benefit)

610

1,286

(2,132)

-

(236)

Net income (loss)

1,529

1,387

(2,076)

-

840

Segment assets (1)

331,573

23,134

55,329

(23,130)

386,906

Fiscal Nine Months Ended September 30, 2022

Contract revenue

$

262,186

$

53,696

$

-

$

-

$

315,882

Depreciation and amortization

12,506

734

-

-

13,240

Interest expense, net

8

-

3,208

-

3,216

Segment profit (loss) before income tax expense

(12,525)

8,111

(9,197)

-

(13,611)

Income tax expense (benefit)

(5,143)

3,330

(3,775)

-

(5,588)

Net income (loss)

(7,382)

4,780

(5,421)

-

(8,023)

Segment assets (1)

336,036

22,630

59,575

(23,130)

395,111

Fiscal Nine Months Ended October 1, 2021

Contract revenue

$

209,977

$

51,560

$

-

$

-

$

261,537

Depreciation and amortization

11,934

744

-

-

12,678

Interest expense, net

5

-

3,095

-

3,100

Segment profit (loss) before income tax expense

(5,607)

7,507

(14,784)

-

(12,884)

Income tax expense (benefit)

(2,331)

3,122

(6,148)

-

(5,357)

Net income (loss)

(3,275)

4,386

(8,638)

-

(7,527)

Segment assets (1)

331,573

23,134

55,329

(23,130)

386,906

(1)Segment assets are presented net of intercompany receivables.

The following tables provide information about disaggregated revenue by contract type, client type and geographical region:

    

Three months ended September 30, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

7,468

$

13,880

$

21,348

Unit-based

43,039

3,791

46,830

Fixed price

52,118

1,103

53,221

Total (1)

$

102,625

$

18,774

$

121,399

Client Type

Commercial

$

6,848

$

1,376

$

8,224

Government

48,073

17,348

65,421

Utilities (2)

47,704

50

47,754

Total (1)

$

102,625

$

18,774

$

121,399

Geography (3)

Domestic

$

102,625

$

18,774

$

121,399

    

Nine months ended September 30, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

23,873

$

40,221

$

64,094

Unit-based

128,540

10,530

139,070

Fixed price

109,773

2,945

112,718

Total (1)

$

262,186

$

53,696

$

315,882

Client Type

Commercial

$

21,638

$

4,330

$

25,968

Government

96,293

49,139

145,432

Utilities (2)

144,255

227

144,482

Total (1)

$

262,186

$

53,696

$

315,882

Geography (3)

Domestic

$

262,186

$

53,696

$

315,882

    

Three months ended October 1, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

9,104

$

13,160

$

22,264

Unit-based

51,470

2,650

54,120

Fixed price

20,950

963

21,913

Total (1)

$

81,524

$

16,773

$

98,297

Client Type

Commercial

$

7,741

$

1,568

$

9,309

Government

18,537

15,181

33,718

Utilities (2)

55,245

24

55,269

Total (1)

$

81,524

$

16,773

$

98,297

Geography (3)

Domestic

$

81,524

$

16,773

$

98,297

    

Nine months ended October 1, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

25,060

$

40,444

$

65,504

Unit-based

132,688

7,817

140,505

Fixed price

52,229

3,299

55,528

Total (1)

$

209,977

$

51,560

$

261,537

Client Type

Commercial

$

20,685

$

4,037

$

24,723

Government

45,766

47,391

93,157

Utilities (2)

143,525

132

143,657

Total (1)

$

209,977

$

51,560

$

261,537

Geography (3)

Domestic

$

209,977

$

51,560

$

261,537

(1)Amounts may not add to the totals due to rounding.
(2)Includes the portion of revenue related to small business programs paid by the end user/customer.
(3)Revenue from the Company’s foreign operations were not material for the three and nine months ended September 30, 2022 and October 1, 2021.

Geographical Information

Substantially all of the Company’s consolidated revenue was derived from its operations in the U.S. The Company operates through a network of offices spread across 23 U.S. states, the District of Columbia, and Canada. Revenues from the Company’s Canadian operations were not material for the three and nine months ended September 30, 2022 nor for the three and nine months ended October 1, 2021.

Customer Concentration

For the three and nine months ended September 30, 2022, the Company’s top 10 customers accounted for 57.2%, and 54.5%, respectively, of the Company’s consolidated contract revenue. For the three and nine months ended October 1, 2021, the Company’s top 10 customers accounted for 52.4%, and 46.8%, respectively, of the Company’s consolidated contract revenue.

For the three months ended September 30, 2022, the Company had one customer, Pueblo County School District, that accounted for 13.3% of its consolidated contract revenues. For the nine months ended September 30, 2022, the Company had one customer, LADWP, that accounted for 13.2% of its consolidated contract revenues. For the three months ended October 1, 2021, the Company had one customer, LADWP, that accounted for 17.0% of its consolidated contract revenue. For the nine months ended October 1, 2021, the Company had no individual customer that accounted for more than 10% of its consolidated contract revenue. 

On a segment basis, the Company had individual customers that accounted for more than 10% of its segment contract revenues. For the three months ended September 30, 2022, the Company derived 38.3% of its Energy segment revenues from three customers, Pueblo County School District, The Dormitory Authority State of New York (“DASNY”) and LADWP. For the nine months ended September 30, 2022, the Company derived 26.5% of its Energy segment revenues from two customers, LADWP and Pueblo County School District. For the three months ended October 1, 2021, the Company derived 20.4% of its Energy segment revenues from one customer, LADWP. For the nine months ended October 1, 2021, the Company derived 21.5% of its Energy segment revenues from two customers, LADWP and Consolidated Edison of New York. For the three months and nine months ended September 30, 2022, and for the three months ended October 1, 2021, no single customer accounted for 10% or more of the Company’s Engineering and Consulting segment revenues. For the nine months ended October 1, 2021, the Company derived 12.2% of its Engineering and Consulting segment revenues from one customer, the City of Elk Grove.

On a geographical basis, the Company’s largest clients are based in California and New York. For the three and nine months ended September 30, 2022, services provided to clients in California accounted for 37.2% and 40.3%, respectively, of the Company’s contract revenue and services provided to clients in New York accounted for 23.4% and 21.4%, respectively, of the Company’s contract revenue. For the three and nine months ended October 1, 2021, services provided to clients in California accounted for 38.9% and 36.2%, respectively, of the Company’s consolidated contract revenue and services provided to clients in New York accounted for 19.0% and 20.7%, respectively, of the Company’s consolidated contract revenue. 

XML 26 R16.htm IDEA: XBRL DOCUMENT v3.22.2.2
INCOME TAXES
9 Months Ended
Sep. 30, 2022
INCOME TAXES  
INCOME TAXES

10. INCOME TAXES

Income taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for the future tax consequences of temporary differences between the financial reporting basis and tax basis of the Company’s assets and liabilities, subject to a judgmental assessment of the recoverability of deferred tax assets. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is recorded when it is more likely than not that some of the deferred tax assets may not be realized. Significant judgment is applied when assessing the need for valuation allowances and includes the evaluation of historical income (loss) adjusted for the effects of non-recurring items and the impact of recent business combinations. Areas of estimation include the Company’s consideration of future taxable income which is driven by verifiable signed contracts and ongoing prudent and feasible tax planning strategies. Should a change in circumstances lead to a change in judgment about the utilization of deferred tax assets in future years, the Company would adjust the related valuation allowances in the period that the change in circumstances occurs, along with a corresponding increase or charge to income.

During each fiscal year, the Company assesses the available positive and negative evidence to evaluate if it is more likely than not that the deferred tax assets will be realized. At the end of fiscal year 2018, the Company determined that it was more-likely-than-not that the entire California net operating loss will not be utilized prior to expiration. Significant pieces of objective evidence evaluated included the Company’s history of utilization of California net operating losses in prior years for each of its subsidiaries, as well as its forecasted amount of net operating loss utilization for certain members of the combined group. As a result, at that time, the Company recorded a valuation allowance in the amount of $86,000 related to California net operating losses. During fiscal year 2021, the Company determined that it was more-likely-than-not that the New Jersey net operating losses will not be utilized prior to expiration and, accordingly, recorded a valuation allowance of $1.1 million. Significant pieces of objective evidence evaluated included the Company’s proportional increase of revenue to other states resulting in a dilution of New Jersey sourced income as well as the Company’s forecasted amount of net operating loss utilization in New Jersey for certain members of the combined group. At the end of fiscal year 2021, the total valuation allowance was $1.2 million, compared to a balance of $86,000 for fiscal year 2020.

As of September 30, 2022, the Company assessed all available positive and negative evidence available to determine whether, based on the weight of that evidence, there was a change in judgment related to the utilization of deferred tax assets in future years. The Company concluded that as of September 30, 2022, the valuation allowance for the Company’s deferred tax assets was appropriate in accordance with ASC 740. Consequently, there was no change to the valuation allowance during the three and nine months ended September 30, 2022.

For acquired business entities, if the Company identifies changes to acquired deferred tax asset valuation allowances or liabilities related to uncertain tax positions during the measurement period and they relate to new information obtained about facts and circumstances that existed as of the acquisition date, those changes are considered a measurement period adjustment, and the Company records the offset to goodwill. The Company records all other changes to deferred tax asset valuation allowances and liabilities related to uncertain tax positions in current period income tax expense.

The Company recognizes the tax benefit from uncertain tax positions if it is more likely than not that the tax positions will be sustained on examination by the tax authorities, based on the technical merits of the position. The tax benefit is measured based on the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement. The Company recognizes interest and penalties related to unrecognized tax benefits in income tax expense. During the three and nine months ended September 30, 2022, the Company did not record a liability for uncertain tax positions.

Based on the Company’s estimates and determination of an effective tax rate for the year, the Company recorded an income tax benefit of $1.5 million and $5.6 million for the three and nine months ended September 30, 2022, respectively, as compared to an income tax benefit of $0.2 million and $5.4 million for the three and nine months ended October 1, 2021, respectively. During the three and nine months ended September 30, 2022, the difference between the effective tax rate and the federal statutory rate was primarily attributable to state taxes, non-deductible stock compensation, nondeductible executive compensation, research and development tax credits, and the commercial building energy efficiency deduction. During the three and nine months ended October 1, 2021, the difference between the effective tax rate and the federal statutory rate was primarily attributable to state taxes, excess tax benefit on stock compensation, nondeductible executive compensation, research and development tax credits, the commercial building energy efficiency deduction, and additional benefits provided by the Coronavirus Aid, Relief, and Economic Security (CARES) Act (H.R. 748).

On June 10, 2021, the Company received notice from the State of New York indicating that the Company’s 2017, 2018, and 2019 state tax returns were under examination. The examination was finalized during the Company’s first quarter of fiscal 2022 and there were no changes made by the State of New York to the state tax returns filed.

XML 27 R17.htm IDEA: XBRL DOCUMENT v3.22.2.2
EARNINGS PER SHARE (EPS)
9 Months Ended
Sep. 30, 2022
EARNINGS PER SHARE (EPS)  
EARNINGS PER SHARE (EPS)

11. EARNINGS PER SHARE (“EPS”)

Basic EPS is computed by dividing net income available to common stockholders by the weighted-average number of common shares outstanding. Diluted EPS is computed by dividing net income by the weighted-average number of common shares outstanding and dilutive potential common shares for the period. Potential common shares include the weighted-average dilutive effects of outstanding stock options and restricted stock awards using the treasury stock method.

The following table sets forth the number of weighted-average common shares outstanding used to compute basic and diluted EPS:

Three months ended

Nine months ended

September 30,

October 1,

September 30,

October 1,

    

2022

    

2021

    

2022

    

2021

(in thousands, except per share amounts)

Net income (loss)

$

76

$

840

$

(8,023)

$

(7,527)

Weighted-average common shares outstanding

 

13,110

 

12,606

 

12,971

 

12,391

Effect of dilutive stock options and restricted stock awards

 

250

 

535

 

 

Weighted-average common shares outstanding-diluted

 

13,360

 

13,141

 

12,971

 

12,391

Earnings (Loss) per share:

Basic

$

0.01

$

0.07

$

(0.62)

$

(0.61)

Diluted

$

0.01

$

0.06

$

(0.62)

$

(0.61)

For the three months ended September 30, 2022 and October 1, 2021, the Company excluded 401,000 and 26,000 common shares subject to outstanding equity awards, respectively, from the calculation of diluted shares because their impact would have been anti-dilutive. For the nine months ended September 30, 2022 and October 1, 2021, the Company reported a net loss, and accordingly, all outstanding equity awards have been excluded from such periods because including them would have been anti-dilutive.

XML 28 R18.htm IDEA: XBRL DOCUMENT v3.22.2.2
CONTINGENCIES
9 Months Ended
Sep. 30, 2022
CONTINGENCIES  
CONTINGENCIES

12. CONTINGENCIES

Claims and Lawsuits

The Company is subject to claims and lawsuits from time to time, including those alleging professional errors or omissions that arise in the ordinary course of business against firms that operate in the engineering and consulting professions. The Company carries professional liability insurance, subject to certain deductibles and policy limits, for such claims as they arise and may from time to time establish reserves for litigation that is considered probable of a loss.

In accordance with accounting standards regarding loss contingencies, the Company accrues an undiscounted liability for those contingencies where the incurrence of a loss is probable and the amount can be reasonably estimated, and discloses the amount accrued and an estimate of any reasonably possible loss in excess of the amount accrued, if such disclosure is necessary for the Company’s financial statements not to be misleading. The Company does not accrue liabilities when the likelihood that the liability has been incurred is probable but the amount cannot be reasonably estimated, or when the liability is believed to be only reasonably possible or remote.

Because litigation outcomes are inherently unpredictable, the Company’s evaluation of legal proceedings often involves a series of complex assessments by management about future events and can rely heavily on estimates and assumptions. If the assessments indicate that loss contingencies that could be material to any one of the Company’s financial statements are not probable, but are reasonably possible, or are probable, but cannot be estimated, then the Company will disclose the nature of the loss contingencies, together with an estimate of the possible loss or a statement that such loss is not reasonably estimable. While the consequences of certain unresolved proceedings are not presently determinable, and a reasonable estimate of the probable and reasonably possible loss or range of loss in excess of amounts accrued for such proceedings cannot be made, an adverse outcome from such proceedings could have a material adverse effect on the Company’s earnings in any given reporting period. However, in the opinion of the Company’s management, after consulting with legal counsel, and taking into account insurance coverage, the ultimate liability related to current outstanding claims and lawsuits is not expected to have a material adverse effect on the Company’s financial statements.

XML 29 R19.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUBSEQUENT EVENTS
9 Months Ended
Sep. 30, 2022
SUBSEQUENT EVENTS  
SUBSEQUENT EVENTS

13. SUBSEQUENT EVENTS

Seventh Amendment to the Credit Agreement

On November 1, 2022, the Company entered into the Seventh Amendment to the Credit Agreement (the “Seventh Amendment”). The Seventh Amendment, (A) waives the minimum Adjusted EBITDA (as defined in the Fifth Amendment) threshold and any related Default or Event of Default (each as defined in the Fifth Amendment) for the fiscal quarter ending September 30, 2022, (B) amends the maximum Total Leverage Ratio (as defined in the Fifth Amendment) threshold and the minimum Adjusted EBITDA threshold for the remainder of the Extended Covenant Relief Period, (C) amends the pricing structure of borrowings under the Credit Agreement during the remainder of the Extended Covenant Relief Period, (D) restricts aggregate borrowings under the Revolving Credit Facility to no more than $10.0 million at any time during the period from November 1, 2022 through the date on which financial statements and compliance documents have been received by the Administrative Agent (as defined in the Credit Agreement) for the fiscal quarter ending March 31, 2023, (E) conditions access to the accordion feature of the Credit Agreement to periods when the Company’s Total Leverage ratio is less than 3.0, (F) amends the Total Leverage Ratio requirement contained in the conditions precedent required upon any Credit Event (as defined in the Credit Agreement) occurring prior to the delivery to the Administrative Agent of the financial statements and compliance documents required for the fiscal quarter ending March 31, 2023, (G) includes a general release of all Claims (as defined in the Seventh Amendment) against the Administrative Agent, the L/C Issuer and the Lenders (each as defined in the Credit Agreement) and (H) amends the timing requirement of certain financial reports. Additionally, during the remainder of the Extended Covenant Relief Period, the Company may not make Share Repurchases (as defined in the Seventh Amendment).

Pursuant to the Seventh Amendment, during the Extended Covenant Relief Period, (A) borrowings under the Credit Agreement will bear interest at SOFR plus 4.00%; provided, that SOFR cannot be less than 0.00%, and (B) the Company will pay a commitment fee of 0.50% per annum for the unused portion of the revolving credit facility under the Credit Agreement.

After the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.40% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio.

XML 30 R20.htm IDEA: XBRL DOCUMENT v3.22.2.2
ORGANIZATION AND OPERATIONS OF THE COMPANY (Policies)
9 Months Ended
Sep. 30, 2022
ORGANIZATION AND OPERATIONS OF THE COMPANY  
Basis of Presentation

The accounting policies followed by the Company are set forth in Part II, Item 8, Note 1, Organization and Operations of the Company, of the Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. In the opinion of management, all adjustments necessary to fairly state the Condensed Consolidated Financial Statements have been made. All such adjustments are of a normal, recurring nature. Certain information and footnote disclosures normally included in the Consolidated Financial Statements prepared in accordance with accounting principles generally accepted in the United States (“U.S. GAAP”) have been condensed or omitted pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). These Condensed Consolidated Financial Statements and related notes thereto should be read in conjunction with the Consolidated Financial Statements and the notes thereto included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. The results of operations for interim periods are not necessarily indicative of results to be expected for the full year.

Fiscal Years

Fiscal Years

The Company operates and reports its annual financial results based on 52 or 53-week periods ending on the Friday closest to December 31. The Company operates and reports its quarterly financial results based on the 13-week period ending on the Friday closest to June 30, September 30, and December 31 and the 13 or 14-week period ending on the Friday closest to March 31, as applicable. Fiscal year 2022, which ends on December 30, 2022, will be comprised of 52 weeks, with all quarters consisting of 13 weeks each. Fiscal year 2021, which ended on December 31, 2021, was comprised of 52 weeks, with all quarters consisting of 13 weeks each. All references to years in the notes to consolidated financial statements represent fiscal years.

Use of Estimates

Use of Estimates

The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the consolidated financial statements. Estimates also affect the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.

Historical and Current Impact of Covid-19

Historical and Current Impact of Covid-19

The coronavirus (“Covid-19”) pandemic and efforts to limit its spread negatively impacted the Company’s operations during its fiscal year 2020 and continued to impact the Company, albeit to a lesser extent, during fiscal year 2021. In California and New York, the states in which the Company has historically derived a majority of its revenue, mandatory shutdown orders were issued in March 2020 followed by phased re-openings that began in May 2020, followed by periods of curtailments as a result of resurgences of Covid-19 cases, and subsequent re-openings through 2020 and 2021. The Company’s largest program for the Los Angeles Department of Water and Power (“LADWP”) resumed in the third quarter of fiscal 2021 and was the Company’s last program suspended due to Covid-19. In addition, through fiscal year 2020 and 2021, none of the Company’s contracts were cancelled due to Covid-19.

Through the current fiscal year 2022, though none of the Company’s current programs are under suspension due to Covid-19 restrictions, certain market segments such as small business customers of major utilities continue to experience lingering impacts of the reduced economic activity due to the Covid-19 related mandates in 2020 and 2021. As of November 2, 2022, none of the Company’s contracts were cancelled as a result of Covid-19.

Asset and liability valuation and other estimates used in preparation of financial statements

As of September 30, 2022, the Company did not have any impairment with respect to goodwill or long-lived assets, including intangible assets. Because the full extent of any impact of a resurgence of the Covid-19 outbreak and efforts to slow its spread are unknown at this time, they could, under certain circumstances, cause impairment and result in a non-cash impairment charge being recorded in future periods. Changes to the estimated future profitability of the business may require that the Company establish an additional valuation allowance against all or some portion of its net deferred tax assets.

Impact on Clients and Subcontractors and Other Risks

The Company primarily works for utilities, municipalities and other public agencies. Should there be a resurgence related to Covid-19, some of these customers could experience significant budget shortfalls for the current year and beyond as a result of the measures taken to mitigate the resurgence effects of the Covid-19 pandemic and/or revenue shortfalls as a result of reduced economic activity. Although none of the Company’s contracts with governmental or public agencies were materially modified during its fiscal year 2020 or fiscal year 2021, these potential budget deficits could result in delayed funding for existing contracts with the Company, postponements of new contracts or price concessions. Further, most of the Company’s clients are not committed to purchase any minimum amount of services, as the Company agreements with them are based on a “purchase order” or “master service agreement” model. As a result, they may discontinue utilizing some or all of the Company’s services with little or no notice.

 In addition, the Company relies on subcontractors and material suppliers to complete a substantial portion of its work, especially in its Energy segment. If the Company’s significant subcontractors and material suppliers suffer significant economic harm and must limit or cease operations or file for bankruptcy as a result of the current economic slowdown, the Company’s subcontractors and material suppliers may not be able to fulfill their contractual obligations satisfactorily and the Company may not have the ability to select its subcontractors and material suppliers of choice for new contracts. If the Company’s subcontractors and material suppliers are not able to fulfill their contractual obligations, it could result in a significant increase in costs for the Company to complete the projects or cause significant delays to the realization of revenues under those projects. The ultimate impact of Covid-19 on the Company’s financial condition and results of operations will depend on all of the factors noted above, including other factors that the Company may not be able to forecast at this time. See the risk factor “The Covid-19 pandemic and health and safety measures intended to slow its spread have adversely affected, and may continue to adversely affect, our business, results of operations and financial condition.” under Part I. Item 1A. “Risk Factors” of the Company’s Annual Report on Form 10-K for the year ended December 31, 2021. While Covid-19 has had an adverse effect on the Company’s business, financial condition and results of operations, the Company is unable to predict the extent or duration of future impacts at this time.

XML 31 R21.htm IDEA: XBRL DOCUMENT v3.22.2.2
RECENT ACCOUNTING PRONOUNCEMENTS (Policies)
9 Months Ended
Sep. 30, 2022
RECENT ACCOUNTING PRONOUNCEMENTS  
Accounting Pronouncements Recently Adopted and Recently Issued

Accounting Pronouncements Recently Adopted

In March 2020, the FASB issued ASU No. 2020-04, “Reference Rate Reform (Topic 848): facilitation of the Effects of Reference Rate Reform on Financial Reporting” (“ASU 2020-04”). ASU 2020-04 provides optional expedients and exceptions for applying U.S. GAAP to contract modifications and hedging relationships that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. ASU 2020-04 provides, among other things, guidance that modifications of contracts within the scope of Topic 470, Debt, should be accounted for by prospectively adjusting the effective interest rate; modifications of contracts within the scope of Topic 840, Leases, should be accounted for as a continuation of the existing contract; and, changes in the critical terms of hedging relationships, caused by reference rate reform, should not result in the de-designation of the instrument, provided certain criteria are met. In January 2021, the FASB issued ASU No. 2021-01, “Reference Rate Reform (Topic 848) - Scope” (“ASU 2021-01”). ASU 2021-01 clarifies the scope and application of ASU 2020-04 and permits entities, among other things, to elect certain optional expedients and exceptions when accounting for derivative contracts and certain hedging relationships affected by changes in the interest rates used for discounting cash flows. The Company adopted this standard effective March 8, 2022. The Company’s previous exposure to LIBOR rates included its credit facilities and swap agreement. The adoption of this standard did not have a material impact to the Company’s Condensed Consolidated Financial Statements.

XML 32 R22.htm IDEA: XBRL DOCUMENT v3.22.2.2
REVENUES (Policies)
9 Months Ended
Sep. 30, 2022
Revenues [Abstract]  
Revenue Recognition

The Company enters into contracts with its clients that contain various types of pricing provisions, including fixed price, time-and-materials, and unit-based provisions. The Company recognizes revenues in accordance with ASU 2014-09, Revenue from Contracts with Customer, codified as ASC Topic 606 and the related amendments (collectively “ASC 606”). As such, the Company identifies a contract with a customer, identifies the performance obligations in the contract, determines the transaction price, allocates the transaction price to each performance obligation in the contract and recognizes revenues when (or as) the Company satisfies a performance obligation.

The following table reflects the Company’s two reportable segments and the types of contracts that each most commonly enters into for revenue generating activities.

Segment

Contract Type

Revenue Recognition Method

Time-and-materials

Time-and-materials

Energy

Unit-based

Unit-based

Software license

Unit-based

Fixed price

Percentage-of-completion

Time-and-materials

Time-and-materials

Engineering and Consulting

Unit-based

Unit-based

Fixed price

Percentage-of-completion

Revenue on the vast majority of the Company’s contracts is recognized over time because of the continuous transfer of control to the customer. Revenue on fixed price contracts is recognized on the percentage-of-completion method based generally on the ratio of direct costs incurred-to-date to estimated total direct costs at completion. The Company uses the percentage-of-completion method to better match the level of work performed at a certain point in time in relation to the effort that will be required to complete a project. In addition, the percentage-of-completion method is a common method of revenue recognition in the Company’s industry.

Many of the Company’s fixed price contracts involve a high degree of subcontracted fixed price effort and are relatively short in duration, thereby lowering the risks of not properly estimating the percent complete. Revenue on time-and-materials and unit-based contracts is recognized as the work is performed in accordance with the specific rates and terms of the contract. The Company recognizes revenues for time-and-materials contracts based upon the actual hours incurred during a reporting period at contractually agreed upon rates per hour and also includes in revenue all reimbursable costs incurred during a reporting period. Certain of the Company’s time-and-materials contracts are subject to maximum contract values and, accordingly, when revenue is expected to exceed the maximum contract value, these contracts are generally recognized under the percentage-of-completion method, consistent with fixed price contracts. For unit-based contracts, the Company recognizes the contract price of units of a basic production product as revenue when the production product is delivered during a period. Revenue for amounts that have been billed but not earned is deferred, and such deferred revenue is referred to as contract liabilities in the accompanying condensed consolidated balance sheets. The Company also derives revenue from software licenses and professional services and maintenance fees. In accordance with ASC 606, the Company performs an assessment of each contract to identify the performance obligations, determine the overall transaction price for the contract, allocate the transaction price to the performance obligations, and recognize the revenue when the performance obligations are satisfied. The Company utilizes the residual approach by which it estimates the standalone selling price by reference to the total transaction price less the sum of the observable standalone selling prices of other goods or services promised in the contract. The software license revenue is typically recognized at a point in time when control is transferred to the client, which is defined as the point in time when the client can use and benefit from the license. The software license is delivered before related services are provided and is functional without services, updates, or technical support. Related professional services include training and support services in which the standalone selling price is determined based on an input measure of hours incurred to total estimated hours and is recognized over time, usually which is the life of the contract.

To determine the proper revenue recognition method for contracts, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined contract should be accounted for as one performance obligation. With respect to the Company’s contracts, it is rare that multiple contracts should be combined into a single performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or separate a single contract into multiple performance obligations could change the amount of revenue and profit recorded in a given period. Contracts are considered to have a single performance obligation if the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts, which is mainly because the Company provides a significant service of integrating a complex set of tasks and components into a single project or capability.

The Company may enter into contracts that include separate phases or elements. If each phase or element is negotiated separately based on the technical resources required and/or the supply and demand for the services being provided, the Company evaluates if the contracts should be segmented. If certain criteria are met, the contracts would be segmented which could result in revenues being assigned to the different elements or phases with different rates of profitability based on the relative value of each element or phase to the estimated total contract revenue. Segmented contracts may comprise up to approximately 2.0% to 3.0% of the Company’s consolidated contract revenue.

Contracts that cover multiple phases or elements of the project or service lifecycle (development, construction and maintenance and support) may be considered to have multiple performance obligations even when they are part of a single contract. For contracts with multiple performance obligations, the Company allocates the transaction price to each performance obligation using the best estimate of the standalone selling price of each distinct good or service in the contract. For the periods presented, the value of the separate performance obligations under contracts with multiple performance obligations (generally measurement and verification tasks under certain energy performance contracts) were not material. In cases where the Company does not provide the distinct good or service on a standalone basis, the primary method used to estimate standalone selling price is the expected cost plus a margin approach, under which the Company forecasts the Company’s expected costs of satisfying a performance obligation and then adds an appropriate margin for the distinct good or service.

The Company provides quality of workmanship warranties to customers that are included in the sale and are not priced or sold separately or do not provide customers with a service in addition to assurance of compliance with agreed-upon specifications and industry standards. The Company does not consider these types of warranties to be separate performance obligations.

In some cases, the Company has a master service or blanket agreement with a customer under which each task order releases the Company to perform specific portions of the overall scope in the service contract. Each task order is typically accounted for as a separate contract because the task order establishes the enforceable rights and obligations, and payment terms.

Under ASC 606, variable consideration should be considered when determining the transaction price and estimates should be made for the variable consideration component of the transaction price, as well as assessing whether an estimate of variable consideration is constrained. For certain of the Company’s contracts, variable consideration can arise from modifications to the scope of services resulting from unapproved change orders or customer claims. Variable consideration is included in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. The Company estimates of variable consideration and determination of whether to include estimated amounts in the transaction price are based largely on assessments of legal enforceability, the Company’s performance, and all information (historical, current and forecasted) that is reasonably available to the Company.

Due to the nature of the work required to be performed on many of the Company’s performance obligations, the estimation of total revenue and cost at completion is complex, subject to many variables and requires significant judgment. As a significant change in one or more of these estimates could affect the profitability of the Company’s contracts, the Company reviews and updates the Company’s contract-related estimates regularly through a company-wide disciplined project review process in which management reviews the progress and execution of the Company’s performance obligations and the estimate at completion (“EAC”). As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule and the related changes in estimates of revenues and costs. Management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the cost and availability of materials, the performance of subcontractors, and the availability and timing of funding from the customer, among other variables.

The Company recognizes adjustments in estimated profit on contracts under the cumulative catch-up method. Under this method, the impact of the adjustment on profit recorded to date is recognized in the period the adjustment is identified. Revenue and profit in future periods of contract performance is recognized using the adjusted estimate. If at any time the estimate of contract profitability indicates an anticipated loss on the contract, the Company recognizes the full amount of estimated loss in the period it is identified.

Contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new rights or obligations or changes the existing enforceable rights or obligations. Most of the Company’s contract modifications are for goods or services that are not distinct from existing contracts due to the significant integration provided in the context of the contract and are accounted for as if they were part of the original contract. The effect of a contract modification that is not distinct from the existing contract on the transaction price and the Company’s measure of progress for the performance obligation to which it relates is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis.

For contract modifications that result in the promise to deliver goods or services that are distinct from the existing contract and the increase in price of the contract is for the same amount as the standalone selling price of the additional goods or services included in the modification, the Company accounts for such contract modifications as a separate contract.

The Company includes claims to vendors, subcontractors and others as a receivable and a reduction in recognized costs when enforceability of the claim is established by the contract and the amounts are reasonably estimable and probable of being recovered. The amounts are recorded up to the extent of the lesser of the amounts management expects to recover or to costs incurred.

Billing practices are governed by the contract terms of each project based upon costs incurred, achievement of milestones or pre-agreed schedules. Billings do not necessarily correlate with revenue recognized using the percentage-of-completion method of revenue recognition.

Direct costs of contract revenue consist primarily of that portion of technical and nontechnical salaries and wages that has been incurred in connection with revenue producing projects. Direct costs of contract revenue also include production expenses, subcontractor services and other expenses that are incurred in connection with revenue producing projects.

Direct costs of contract revenue exclude that portion of technical and nontechnical salaries and wages related to marketing efforts, vacations, holidays and other time not spent directly generating revenue under existing contracts. Such costs are included in general and administrative expenses. Additionally, payroll taxes, bonuses and employee benefit costs for all Company personnel are included in general and administrative expenses in the accompanying consolidated statements of comprehensive income since no allocation of these costs is made to direct costs of contract revenue. No allocation of facilities costs is made to direct costs of contract revenue. Other companies may classify as direct costs of contract revenue some of the costs that the Company classifies as general and administrative costs. The Company expenses direct costs of contract revenue when incurred.

Included in revenue and costs are all reimbursable costs for which the Company has the risk or on which the fee was based at the time of bid or negotiation. No revenue or cost is recorded for costs in which the Company acts solely in the capacity of an agent and has no risks associated with such costs.

Accounts receivable are carried at original invoice amount less an estimate made for doubtful accounts based upon a review of all outstanding amounts on a quarterly basis. Management determines allowances for doubtful accounts through specific identification of amounts considered to be uncollectible and potential write-offs, plus a non-specific allowance for other amounts for which some potential loss has been determined to be probable based on current and past experience. The Company’s historical credit losses have been minimal with governmental entities and large public utilities, but disputes may arise related to these receivable amounts. Accounts receivable are written off when deemed uncollectible. Recoveries of accounts receivable previously written off are recorded when received.

Retainage, included in contract assets, represents amounts withheld from billings to the Company’s clients pursuant to provisions in the contracts and may not be paid to the Company until specific tasks are completed or the project is completed and, in some instances, for even longer periods. As of September 30, 2022 and December 31, 2021, contract assets included retainage of approximately $7.7 million and $4.5 million, respectively.

XML 33 R23.htm IDEA: XBRL DOCUMENT v3.22.2.2
REVENUES (Tables)
9 Months Ended
Sep. 30, 2022
REVENUES  
Schedule of Contracts by Reportable Segments and Type of Contracts

Segment

Contract Type

Revenue Recognition Method

Time-and-materials

Time-and-materials

Energy

Unit-based

Unit-based

Software license

Unit-based

Fixed price

Percentage-of-completion

Time-and-materials

Time-and-materials

Engineering and Consulting

Unit-based

Unit-based

Fixed price

Percentage-of-completion

XML 34 R24.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA (Tables)
9 Months Ended
Sep. 30, 2022
SUPPLEMENTAL FINANCIAL STATEMENT DATA  
Schedule of equipment and leasehold improvements

September 30,

December 31,

    

2022

    

2021

(in thousands)

Furniture and fixtures

$

4,065

$

4,070

Computer hardware and software

 

33,085

 

26,425

Leasehold improvements

 

3,083

 

3,011

Equipment under finance leases

 

5,204

 

3,286

Automobiles, trucks, and field equipment

 

3,102

 

3,099

Subtotal

 

48,539

 

39,891

Accumulated depreciation and amortization

 

(27,392)

 

(23,134)

Equipment and leasehold improvements, net

$

21,147

$

16,757

Schedule of accrued liabilities

September 30,

December 31,

    

2022

    

2021

(in thousands)

Accrued subcontractor costs

$

34,624

$

19,727

Other

 

5,013

 

2,750

Compensation and payroll taxes

 

3,676

 

2,244

Accrued bonuses

3,606

7,767

Employee withholdings

 

3,396

 

2,665

Accrued workers’ compensation insurance

 

681

 

527

Total accrued liabilities

$

50,996

$

35,680

Schedule of changes in the carrying value of goodwill by reporting unit

December 31,

Additional

Additions /

September 30,

    

2021

    

Purchase Cost

    

Adjustments

    

2022

(in thousands)

Reporting Unit:

Energy

$

129,375

$

$

$

129,375

Engineering and Consulting

749

749

$

130,124

$

$

$

130,124

Schedule of gross amounts and accumulated amortization of the Company's acquired identifiable intangible assets with finite useful lives

September 30, 2022

December 31, 2021

Gross

Accumulated

Gross

Accumulated

Amortization

    

Amount

    

Amortization

    

Amount

    

Amortization

    

Period

(in thousands)

(in years)

Finite:

Backlog

$

7,944

$

7,872

$

7,944

$

7,222

1.0

Tradename

 

15,911

 

10,492

 

15,911

 

8,997

 

2.5

-

6.0

Non-compete agreements

1,420

1,420

1,420

1,413

4.0

-

5.0

Developed technology

15,810

11,141

15,500

8,950

8.0

Customer relationships

58,149

24,127

58,149

19,939

5.0

-

8.0

Total finite intangible assets

99,234

55,052

98,924

46,521

In-process research and technology (1)

310

Total intangible assets

$

99,234

$

55,052

$

99,234

$

46,521

(1)In-process research and technology will not be amortized until put into use.

XML 35 R25.htm IDEA: XBRL DOCUMENT v3.22.2.2
DEBT OBLIGATIONS (Tables)
9 Months Ended
Sep. 30, 2022
DEBT OBLIGATIONS  
Schedule of debt obligations, excluding obligations under capital leases

    

September 30,

    

December 31,

2022

2021

(in thousands)

Outstanding borrowings on Term A Loan

$

67,500

$

75,000

Outstanding borrowings on Revolving Credit Facility

Outstanding borrowings on Delayed Draw Term Loan

41,750

24,000

Other debt agreements

583

2,161

Total debt

109,833

101,161

Issuance costs and debt discounts

(411)

(587)

Subtotal

109,422

100,574

Less current portion of long-term debt

 

15,510

 

15,036

Long-term debt portion

$

93,912

$

85,538

XML 36 R26.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES (Tables)
9 Months Ended
Sep. 30, 2022
LEASES  
Summary of the Lease Expense

Three Months Ended

Nine Months Ended

September 30,

October 1,

September 30,

October 1,

2022

    

2021

    

2022

    

2021

(in thousands)

(in thousands)

Operating lease cost

$

1,523

$

1,596

$

4,635

$

4,941

Finance lease cost:

Amortization of assets

311

139

799

397

Interest on lease liabilities

22

9

51

22

Total net lease cost

$

1,856

$

1,744

$

5,485

$

5,360

Summary of Lease Information Presented on the Condensed Consolidated Balance Sheet

September 30,

    

December 31,

2022

2021

(in thousands)

Operating leases:

Right-of-use assets

$

12,715

$

15,177

 

 

Lease liability

$

4,889

$

5,575

Lease liability, less current portion

 

8,747

 

10,768

Total lease liabilities

$

13,636

$

16,343

 

 

Finance leases (included in equipment and leasehold improvements, net):

Equipment and leasehold improvements, net

$

5,204

$

3,286

Accumulated depreciation

 

(2,524)

 

(1,947)

Total equipment and leasehold improvements, net

$

2,680

$

1,339

 

Finance lease obligations

$

970

$

539

Finance lease obligations, less current portion

1,657

778

Total finance lease obligations

$

2,627

$

1,317

Weighted average remaining lease term (in years):

Operating Leases

3.48

3.79

Finance Leases

2.70

2.62

Weighted average discount rate:

Operating Leases

4.16

%

4.28

%

Finance Leases

3.08

%

2.78

%

Summary of Other Information and Supplemental Cash Flow Information Related to Finance and Operating Leases

Nine Months Ended

September 30,

October 1,

2022

    

2021

(in thousands)

Cash paid for amounts included in the measurement of lease liabilities:

Operating cash flow from operating leases

$

4,879

$

5,115

Operating cash flow from finance leases

51

22

Financing cash flow from finance leases

827

440

Right-of-use assets obtained in exchange for lease liabilities:

Operating leases

$

1,706

$

326

Summary of the Maturities of Operating Lease Liabilities

The following is a summary of the maturities of lease liabilities as of September 30, 2022:

    

Operating

    

Finance

 

(in thousands)

Fiscal year:

Remainder of 2022

$

1,542

$

228

2023

 

4,765

 

1,161

2024

 

3,313

887

2025

2,493

303

2026

2,140

 

134

2027 and thereafter

 

453

 

30

Total lease payments

14,706

2,743

Less: Imputed interest

 

(1,070)

(116)

Total lease obligations

 

13,636

2,627

Less: Current obligations

 

4,889

970

Noncurrent lease obligations

$

8,747

$

1,657

Summary of the Maturities of Finance Lease Liabilities

    

Operating

    

Finance

 

(in thousands)

Fiscal year:

Remainder of 2022

$

1,542

$

228

2023

 

4,765

 

1,161

2024

 

3,313

887

2025

2,493

303

2026

2,140

 

134

2027 and thereafter

 

453

 

30

Total lease payments

14,706

2,743

Less: Imputed interest

 

(1,070)

(116)

Total lease obligations

 

13,636

2,627

Less: Current obligations

 

4,889

970

Noncurrent lease obligations

$

8,747

$

1,657

XML 37 R27.htm IDEA: XBRL DOCUMENT v3.22.2.2
SEGMENT AND GEOGRAPHICAL INFORMATION (Tables)
9 Months Ended
Sep. 30, 2022
SEGMENT AND GEOGRAPHICAL INFORMATION  
Schedule of financial information with respect to the reportable segments

Engineering

Unallocated

Consolidated

    

Energy

    

& Consulting

    

Corporate

    

Intersegment

    

Total

(in thousands)

Fiscal Three Months Ended September 30, 2022

Contract revenue

$

102,625

$

18,774

$

-

$

-

$

121,399

Depreciation and amortization

4,166

239

-

-

4,405

Interest expense, net

3

-

1,432

-

1,435

Segment profit (loss) before income tax expense

(1,815)

3,473

(3,108)

-

(1,450)

Income tax expense (benefit)

(1,565)

1,781

(1,742)

-

(1,526)

Net income (loss)

(250)

1,692

(1,366)

-

76

Segment assets (1)

336,036

22,630

59,575

(23,130)

395,111

Fiscal Three Months Ended October 1, 2021

Contract revenue

$

81,523

$

16,774

$

-

$

-

$

98,297

Depreciation and amortization

4,023

244

-

-

4,267

Interest expense, net

-

-

937

-

937

Segment profit (loss) before income tax expense

2,138

2,673

(4,207)

-

604

Income tax expense (benefit)

610

1,286

(2,132)

-

(236)

Net income (loss)

1,529

1,387

(2,076)

-

840

Segment assets (1)

331,573

23,134

55,329

(23,130)

386,906

Fiscal Nine Months Ended September 30, 2022

Contract revenue

$

262,186

$

53,696

$

-

$

-

$

315,882

Depreciation and amortization

12,506

734

-

-

13,240

Interest expense, net

8

-

3,208

-

3,216

Segment profit (loss) before income tax expense

(12,525)

8,111

(9,197)

-

(13,611)

Income tax expense (benefit)

(5,143)

3,330

(3,775)

-

(5,588)

Net income (loss)

(7,382)

4,780

(5,421)

-

(8,023)

Segment assets (1)

336,036

22,630

59,575

(23,130)

395,111

Fiscal Nine Months Ended October 1, 2021

Contract revenue

$

209,977

$

51,560

$

-

$

-

$

261,537

Depreciation and amortization

11,934

744

-

-

12,678

Interest expense, net

5

-

3,095

-

3,100

Segment profit (loss) before income tax expense

(5,607)

7,507

(14,784)

-

(12,884)

Income tax expense (benefit)

(2,331)

3,122

(6,148)

-

(5,357)

Net income (loss)

(3,275)

4,386

(8,638)

-

(7,527)

Segment assets (1)

331,573

23,134

55,329

(23,130)

386,906

(1)Segment assets are presented net of intercompany receivables.
Schedule of disaggregation of revenue

    

Three months ended September 30, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

7,468

$

13,880

$

21,348

Unit-based

43,039

3,791

46,830

Fixed price

52,118

1,103

53,221

Total (1)

$

102,625

$

18,774

$

121,399

Client Type

Commercial

$

6,848

$

1,376

$

8,224

Government

48,073

17,348

65,421

Utilities (2)

47,704

50

47,754

Total (1)

$

102,625

$

18,774

$

121,399

Geography (3)

Domestic

$

102,625

$

18,774

$

121,399

    

Nine months ended September 30, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

23,873

$

40,221

$

64,094

Unit-based

128,540

10,530

139,070

Fixed price

109,773

2,945

112,718

Total (1)

$

262,186

$

53,696

$

315,882

Client Type

Commercial

$

21,638

$

4,330

$

25,968

Government

96,293

49,139

145,432

Utilities (2)

144,255

227

144,482

Total (1)

$

262,186

$

53,696

$

315,882

Geography (3)

Domestic

$

262,186

$

53,696

$

315,882

    

Three months ended October 1, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

9,104

$

13,160

$

22,264

Unit-based

51,470

2,650

54,120

Fixed price

20,950

963

21,913

Total (1)

$

81,524

$

16,773

$

98,297

Client Type

Commercial

$

7,741

$

1,568

$

9,309

Government

18,537

15,181

33,718

Utilities (2)

55,245

24

55,269

Total (1)

$

81,524

$

16,773

$

98,297

Geography (3)

Domestic

$

81,524

$

16,773

$

98,297

    

Nine months ended October 1, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

25,060

$

40,444

$

65,504

Unit-based

132,688

7,817

140,505

Fixed price

52,229

3,299

55,528

Total (1)

$

209,977

$

51,560

$

261,537

Client Type

Commercial

$

20,685

$

4,037

$

24,723

Government

45,766

47,391

93,157

Utilities (2)

143,525

132

143,657

Total (1)

$

209,977

$

51,560

$

261,537

Geography (3)

Domestic

$

209,977

$

51,560

$

261,537

(1)Amounts may not add to the totals due to rounding.
(2)Includes the portion of revenue related to small business programs paid by the end user/customer.
(3)Revenue from the Company’s foreign operations were not material for the three and nine months ended September 30, 2022 and October 1, 2021.
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.22.2.2
EARNINGS PER SHARE (EPS) (Tables)
9 Months Ended
Sep. 30, 2022
EARNINGS PER SHARE (EPS)  
Schedule of number of weighted-average common shares outstanding used to compute basic and diluted EPS

Three months ended

Nine months ended

September 30,

October 1,

September 30,

October 1,

    

2022

    

2021

    

2022

    

2021

(in thousands, except per share amounts)

Net income (loss)

$

76

$

840

$

(8,023)

$

(7,527)

Weighted-average common shares outstanding

 

13,110

 

12,606

 

12,971

 

12,391

Effect of dilutive stock options and restricted stock awards

 

250

 

535

 

 

Weighted-average common shares outstanding-diluted

 

13,360

 

13,141

 

12,971

 

12,391

Earnings (Loss) per share:

Basic

$

0.01

$

0.07

$

(0.62)

$

(0.61)

Diluted

$

0.01

$

0.06

$

(0.62)

$

(0.61)

XML 39 R29.htm IDEA: XBRL DOCUMENT v3.22.2.2
ORGANIZATION AND OPERATIONS OF THE COMPANY - Segment Information (Details)
9 Months Ended
Sep. 30, 2022
segment
Segment Information  
Number of reporting segments 2
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.22.2.2
ORGANIZATION AND OPERATIONS OF THE COMPANY - Fiscal Years (Details)
3 Months Ended 12 Months Ended
Dec. 30, 2022
Sep. 30, 2022
Jul. 01, 2022
Apr. 01, 2022
Dec. 31, 2021
Oct. 01, 2021
Jul. 02, 2021
Apr. 02, 2021
Dec. 30, 2022
Dec. 31, 2021
Entity Information [Line Items]                    
Length of fiscal period 91 days 91 days 91 days 91 days 91 days 91 days 91 days 91 days 364 days 364 days
Minimum [Member]                    
Entity Information [Line Items]                    
Length of fiscal period       91 days         364 days  
Maximum [Member]                    
Entity Information [Line Items]                    
Length of fiscal period       98 days         371 days  
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.22.2.2
ORGANIZATION AND OPERATIONS OF THE COMPANY - Historical and Current Impact of Covid-19 (Details) - Covid-19
$ in Thousands
9 Months Ended 12 Months Ended
Nov. 02, 2022
contract
Sep. 30, 2022
USD ($)
Dec. 31, 2021
contract
Dec. 31, 2020
contract
Unusual or Infrequent Item, or Both [Line Items]        
Number of contracts cancelled | contract 0   0 0
Goodwill impairment   $ 0    
Long-lived assets impairment   $ 0    
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.22.2.2
RECENT ACCOUNTING PRONOUNCEMENTS (Details) - Accounting Standards Update 2021-01 [Member]
Sep. 30, 2022
New Accounting Pronouncements or Change in Accounting Principle [Line Items]  
Change in Accounting Principle, Accounting Standards Update, Adopted true
Change in Accounting Principle, Accounting Standards Update, Adoption Date Mar. 08, 2022
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.22.2.2
REVENUES - Segment Information (Details)
9 Months Ended
Sep. 30, 2022
segment
Segment Information  
Number of reporting segments 2
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.22.2.2
REVENUES - General Information (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Sep. 30, 2022
Oct. 01, 2021
Dec. 31, 2021
Disaggregation of Revenue [Line Items]          
Payroll taxes, bonuses and employee benefit costs for all Company personnel $ 20,373 $ 19,374 $ 60,169 $ 57,530  
Revenue of the entity recorded in which it acts solely in the capacity of an agent     0    
Retained accounts receivable $ 7,700   $ 7,700    
Accounts receivable          
Disaggregation of Revenue [Line Items]          
Retained accounts receivable         $ 4,500
Maximum [Member]          
Disaggregation of Revenue [Line Items]          
Percent of revenue (as a percent) 3.00%   3.00%    
Minimum [Member]          
Disaggregation of Revenue [Line Items]          
Percent of revenue (as a percent) 2.00%   2.00%    
Cost of Sales [Member]          
Disaggregation of Revenue [Line Items]          
Payroll taxes, bonuses and employee benefit costs for all Company personnel     $ 0    
Allocation of facilities costs to contract revenue     $ 0    
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accounts Receivable (Details)
$ in Millions
9 Months Ended
Sep. 30, 2022
USD ($)
SUPPLEMENTAL FINANCIAL STATEMENT DATA  
Cash proceeds from sale of trade receivables $ 8.0
Discount on trade accounts receivable sold $ 0.8
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Tabular Disclosure (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment under finance leases $ 5,204 $ 3,286
Equipment and leasehold improvements, gross 48,539 39,891
Accumulated depreciation and amortization (27,392) (23,134)
Total equipment and leasehold improvements, net 21,147 16,757
Furniture and Fixtures [Member]    
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment and leasehold improvements 4,065 4,070
Computer Hardware and Software [Member]    
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment and leasehold improvements 33,085 26,425
Leasehold Improvements [Member]    
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment and leasehold improvements 3,083 3,011
Automobiles Trucks and Field Equipment [Member]    
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment and leasehold improvements $ 3,102 $ 3,099
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Amortization Expense (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended 12 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Sep. 30, 2022
Oct. 01, 2021
Dec. 31, 2021
Finance leases          
Amortization expense $ 311 $ 139 $ 799 $ 397 $ 600
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accrued Liabilities (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
SUPPLEMENTAL FINANCIAL STATEMENT DATA    
Accrued subcontractor costs $ 34,624 $ 19,727
Other 5,013 2,750
Compensation and payroll taxes 3,676 2,244
Accrued bonuses 3,606 7,767
Employee withholdings 3,396 2,665
Accrued workers' compensation insurance 681 527
Total accrued liabilities $ 50,996 $ 35,680
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Goodwill (Details)
$ in Thousands
Sep. 30, 2022
USD ($)
Changes in carrying value of goodwill  
Goodwill at beginning of period $ 130,124
Goodwill at end of period 130,124
Energy  
Changes in carrying value of goodwill  
Goodwill at beginning of period 129,375
Goodwill at end of period 129,375
Engineering and Consulting  
Changes in carrying value of goodwill  
Goodwill at beginning of period 749
Goodwill at end of period $ 749
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Gross Amounts and Accumulated Amortization (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets $ 99,234 $ 98,924
Accumulated Amortization 55,052 46,521
Order or Production Backlog [Member]    
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets 7,944 7,944
Accumulated Amortization 7,872 7,222
Trade Names [Member]    
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets 15,911 15,911
Accumulated Amortization 10,492 8,997
Noncompete Agreements [Member]    
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets 1,420 1,420
Accumulated Amortization 1,420 1,413
Developed Technology Rights [Member]    
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets 15,810 15,500
Accumulated Amortization 11,141 8,950
Customer Relationships [Member]    
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets 58,149 58,149
Accumulated Amortization $ 24,127 $ 19,939
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Amortization Period (Details)
9 Months Ended
Sep. 30, 2022
Order or Production Backlog [Member]  
Finite-Lived Intangible Assets [Line Items]  
Amortization Period (in years) 1 year
Trade Names [Member] | Minimum [Member]  
Finite-Lived Intangible Assets [Line Items]  
Amortization Period (in years) 2 years 6 months
Trade Names [Member] | Maximum [Member]  
Finite-Lived Intangible Assets [Line Items]  
Amortization Period (in years) 6 years
Noncompete Agreements [Member] | Minimum [Member]  
Finite-Lived Intangible Assets [Line Items]  
Amortization Period (in years) 4 years
Noncompete Agreements [Member] | Maximum [Member]  
Finite-Lived Intangible Assets [Line Items]  
Amortization Period (in years) 5 years
Developed Technology Rights [Member]  
Finite-Lived Intangible Assets [Line Items]  
Amortization Period (in years) 8 years
Customer Relationships [Member] | Minimum [Member]  
Finite-Lived Intangible Assets [Line Items]  
Amortization Period (in years) 5 years
Customer Relationships [Member] | Maximum [Member]  
Finite-Lived Intangible Assets [Line Items]  
Amortization Period (in years) 8 years
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Intangible Assets (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Intangible Assets, Gross (Excluding Goodwill) [Abstract]    
Total finite intangible assets $ 99,234 $ 98,924
In-process research and technology   310
Total intangible assets $ 99,234 $ 99,234
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - In-process Research and Technology Reclassified (Details)
$ in Millions
9 Months Ended
Sep. 30, 2022
USD ($)
SUPPLEMENTAL FINANCIAL STATEMENT DATA  
In-process research and technology reclassified to developed technology $ 0.3
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Developed Technology (Details)
$ in Millions
9 Months Ended
Sep. 30, 2022
USD ($)
Developed Technology Rights [Member]  
Finite-Lived Intangible Assets [Line Items]  
In-process research and technology reclassified to developed technology $ 0.3
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.22.2.2
DERIVATIVE FINANCIAL INSTRUMENTS (Details) - Interest swap agreement - Cash flow hedge - USD ($)
$ in Thousands
Jan. 31, 2022
Jan. 31, 2019
Derivative [Line Items]    
Notional amount $ 0 $ 35,000
Fixed rate (as a percent)   2.47%
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.22.2.2
DEBT OBLIGATIONS - Composition (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Debt Instrument [Line Items]    
Total debt $ 109,833 $ 101,161
Issuance costs and debt discounts (411) (587)
Subtotal 109,422 100,574
Notes Payable to Banks [Member] | Term A Loan [Member]    
Debt Instrument [Line Items]    
Total debt 67,500 75,000
Notes Payable to Banks [Member] | Delayed Draw Term Loan Facility [Member]    
Debt Instrument [Line Items]    
Total debt 41,750 24,000
Notes Payable, Other Payables [Member] | Other Debt [Member]    
Debt Instrument [Line Items]    
Total debt $ 583 $ 2,161
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.22.2.2
DEBT OBLIGATIONS - Classification (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Long-term Debt, Current and Noncurrent [Abstract]    
Subtotal $ 109,422 $ 100,574
Less current portion of long-term debt 15,510 15,036
Long-term debt portion $ 93,912 $ 85,538
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.22.2.2
DEBT OBLIGATIONS - Credit Facilities (Details) - Notes Payable to Banks [Member]
$ in Millions
12 Months Ended
Mar. 08, 2022
Apr. 30, 2021
USD ($)
Apr. 29, 2021
USD ($)
Jun. 26, 2019
USD ($)
Dec. 30, 2022
Sep. 30, 2022
USD ($)
Aug. 02, 2022
USD ($)
Credit Agreement 2019 [Member]              
Debt Instrument [Line Items]              
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through June 26, 2020       6.00      
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, September 25, 2020       7.75      
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, January 1, 2021       7.50      
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, April 2, 2021       6.25      
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, July 2, 2021       4.00      
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, October 1, 2021 and thereafter       3.25      
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through June 30, 2021   4.50          
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through September 30, 2021   5.25          
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through December 30, 2021   4.50          
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through March 31, 2022   4.25          
Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through June 30, 2022 and thereafter   3.25          
Minimum fixed charge coverage ratio       1.20      
Maximum capital expenditure, debt covenant   $ 15.0   $ 7.0      
Minimum liquidity   10.0   5.0      
Maximum aggregate amount of earn-out payments during Relief Period   $ 17.0 $ 7.0 7.0      
Available funds from the Delayed Draw Term Loan           $ 20.0  
Maximum capital expenditures during Relief Period           $ 20.0  
Debt instrument, covenants, purchase money indebtedness and Capitalized Lease Obligations       1.5     $ 4.0
Credit Agreement 2019 [Member] | Minimum [Member]              
Debt Instrument [Line Items]              
Commitment fee (as a percent) 0.15% 0.15%          
Credit Agreement 2019 [Member] | Minimum [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Commitment fee (as a percent)         0.15%    
Credit Agreement 2019 [Member] | Maximum [Member]              
Debt Instrument [Line Items]              
Commitment fee (as a percent) 0.45% 0.40%          
Credit Agreement 2019 [Member] | Maximum [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Commitment fee (as a percent)         0.40%    
Credit Agreement 2019 [Member] | Base Rate [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate, interest period (as a percent) 0.10%            
Credit Agreement 2019 [Member] | Base Rate [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate, interest period (as a percent)         0.10%    
Credit Agreement 2019 [Member] | Base Rate [Member] | Minimum [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent) 0.125% 0.125%          
Credit Agreement 2019 [Member] | Base Rate [Member] | Minimum [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent)         0.125%    
Credit Agreement 2019 [Member] | Base Rate [Member] | Maximum [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent) 1.50% 1.25%          
Credit Agreement 2019 [Member] | Base Rate [Member] | Maximum [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent)         1.25%    
Credit Agreement 2019 [Member] | London Interbank Offered Rate (LIBOR) [Member] | Minimum [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent)   1.125%          
Interest rate (as a percent)   0.00%          
Credit Agreement 2019 [Member] | London Interbank Offered Rate (LIBOR) [Member] | Maximum [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent)   2.25%          
Credit Agreement 2019 [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate, interest period (as a percent) 0.15%            
Credit Agreement 2019 [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate, interest period (as a percent)         0.15%    
Credit Agreement 2019 [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Minimum [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent) 1.125%            
Interest rate (as a percent) 0.00%            
Credit Agreement 2019 [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Minimum [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent)         1.125%    
Interest rate (as a percent)         0.00%    
Credit Agreement 2019 [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Maximum [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent) 2.50%            
Credit Agreement 2019 [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Maximum [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Spread on floating interest rate (as a percent)         2.25%    
Term A Loan [Member]              
Debt Instrument [Line Items]              
Initial outstanding principal       100.0      
Revolving Credit Facility [Member]              
Debt Instrument [Line Items]              
Maximum borrowing capacity       50.0      
Letter of Credit [Member] | Minimum [Member]              
Debt Instrument [Line Items]              
Commitment fee (as a percent) 0.84% 0.84%          
Letter of Credit [Member] | Minimum [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Commitment fee (as a percent)         0.84%    
Letter of Credit [Member] | Maximum [Member]              
Debt Instrument [Line Items]              
Commitment fee (as a percent) 1.875% 1.688%          
Letter of Credit [Member] | Maximum [Member] | Forecast [Member]              
Debt Instrument [Line Items]              
Commitment fee (as a percent)         1.688%    
Delayed Draw Term Loan Facility [Member]              
Debt Instrument [Line Items]              
Maximum borrowing capacity       $ 50.0      
XML 59 R49.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - General information (Details)
$ in Thousands
9 Months Ended
Sep. 30, 2022
USD ($)
Leases  
Operating lease, option to extend true
Operating lease, option to terminate true
Residual value guarantee $ 0
Minimum [Member]  
Leases  
Operating lease, remaining lease term 1 year
Maximum [Member]  
Leases  
Operating lease, remaining lease term 8 years
Operating lease, extension term 5 years
Operating lease, terminate term 1 year
XML 60 R50.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - Lease Expense (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended 12 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Sep. 30, 2022
Oct. 01, 2021
Dec. 31, 2021
Lease cost          
Operating lease cost $ 1,523 $ 1,596 $ 4,635 $ 4,941  
Amortization of assets 311 139 799 397 $ 600
Interest on lease liabilities 22 9 51 22  
Total net lease cost $ 1,856 $ 1,744 $ 5,485 $ 5,360  
XML 61 R51.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - Consolidated Balance Sheet (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Assets and Liabilities, Lessee [Abstract]    
Right-of-use assets $ 12,715 $ 15,177
Operating leases, lease liabilities    
Lease liability 4,889 5,575
Lease liability, less current portion 8,747 10,768
Total lease liabilities 13,636 16,343
Finance leases (included in equipment and leasehold improvements, net):    
Equipment and leasehold improvements 5,204 3,286
Accumulated depreciation (2,524) (1,947)
Total equipment and leasehold improvements, net $ 2,680 $ 1,339
Finance Lease, Right-of-Use Asset, Statement of Financial Position Equipment and leasehold improvements, net Equipment and leasehold improvements, net
Finance lease obligations    
Finance lease obligations $ 970 $ 539
Finance lease obligations, less current portion 1,657 778
Total finance lease obligations $ 2,627 $ 1,317
XML 62 R52.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - Additional Information (Details)
Sep. 30, 2022
Dec. 31, 2021
Leases    
Operating leases, weighted average remaining lease term 3 years 5 months 23 days 3 years 9 months 14 days
Finance leases, weighted average remaining lease term 2 years 8 months 12 days 2 years 7 months 13 days
Operating leases, weighted average discount rate 4.16% 4.28%
Finance leases, weighted average discount rate 3.08% 2.78%
XML 63 R53.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - Rent Expense (Details) - USD ($)
$ in Millions
3 Months Ended 9 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Sep. 30, 2022
Oct. 01, 2021
LEASES        
Rent expenses $ 1.6 $ 4.9 $ 1.6 $ 5.2
XML 64 R54.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - Supplemental Cash Flow Information (Details) - USD ($)
$ in Thousands
9 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Cash paid for amounts included in the measurement of lease liabilities:    
Operating cash flow from operating leases $ 4,879 $ 5,115
Operating cash flow from finance leases 51 22
Financing cash flow from finance leases 827 440
Right-of-use assets obtained in exchange for lease liabilities for operating leases $ 1,706 $ 326
XML 65 R55.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - Operating Leases - Maturities of Lease Liabilities (Details)
$ in Thousands
Sep. 30, 2022
USD ($)
Operating  
Remainder of 2022 $ 1,542
2023 4,765
2024 3,313
2025 2,493
2026 2,140
2027 and thereafter 453
Total lease payments $ 14,706
XML 66 R56.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - Operating Leases - Gross Difference (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Operating    
Total lease payments $ 14,706  
Less: Imputed interest (1,070)  
Total lease liabilities 13,636 $ 16,343
Less: Current obligations 4,889 5,575
Noncurrent lease obligations $ 8,747 $ 10,768
XML 67 R57.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - Finance Leases - Maturities of Lease Liabilities (Details)
$ in Thousands
Sep. 30, 2022
USD ($)
Finance  
Remainder of 2022 $ 228
2023 1,161
2024 887
2025 303
2026 134
2027 and thereafter 30
Total lease payments $ 2,743
XML 68 R58.htm IDEA: XBRL DOCUMENT v3.22.2.2
LEASES - Finance Leases - Gross Difference (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Finance    
Total lease payments $ 2,743  
Less: Imputed interest (116)  
Total finance lease obligations 2,627 $ 1,317
Less: Current obligations 970 539
Noncurrent lease obligations $ 1,657 $ 778
XML 69 R59.htm IDEA: XBRL DOCUMENT v3.22.2.2
COMMITMENTS AND VARIABLE INTEREST ENTITIES - Employee Benefit Plans (Details)
$ in Millions
9 Months Ended
Sep. 30, 2022
USD ($)
Y
Oct. 01, 2021
USD ($)
Defined Contribution Plan Disclosure [Line Items]    
Attained age | Y 21  
Qualified Cash or Deferred Arrangement [Member]    
Defined Contribution Plan Disclosure [Line Items]    
Maximum employee contribution as a percentage of compensation under 401 (k) Plan 50.00%  
Defined Contribution Plan, Tax Status us-gaap:QualifiedPlanMember  
Defined Contribution Plan [Member]    
Defined Contribution Plan Disclosure [Line Items]    
Service period 3 months  
Defined contribution plan, employer matching contribution, percent of match 50.00%  
Defined contribution plan, employer matching contribution, percent of employees' gross pay 6.00%  
Employer matching contributions | $ $ 2.0 $ 1.6
XML 70 R60.htm IDEA: XBRL DOCUMENT v3.22.2.2
COMMITMENTS AND VARIABLE INTEREST ENTITIES - Variable Interest Entities (Details)
9 Months Ended
Sep. 30, 2022
item
COMMITMENTS AND VARIABLE INTEREST ENTITIES  
Number of VIEs 1
XML 71 R61.htm IDEA: XBRL DOCUMENT v3.22.2.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Information (Details)
9 Months Ended
Sep. 30, 2022
segment
Segment Information  
Number of reporting segments 2
XML 72 R62.htm IDEA: XBRL DOCUMENT v3.22.2.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Intersegment Sales (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Sep. 30, 2022
Oct. 01, 2021
Segment Reporting Information [Line Items]        
Contract revenue $ 121,399 $ 98,297 $ 315,882 $ 261,537
Intersegment Eliminations [Member]        
Segment Reporting Information [Line Items]        
Contract revenue $ 0 $ 0 $ 0 $ 0
XML 73 R63.htm IDEA: XBRL DOCUMENT v3.22.2.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Statement of Operations (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Jul. 01, 2022
Apr. 01, 2022
Oct. 01, 2021
Jul. 02, 2021
Apr. 02, 2021
Sep. 30, 2022
Oct. 01, 2021
Segment reconciliation                
Contract revenue $ 121,399     $ 98,297     $ 315,882 $ 261,537
Depreciation and amortization 4,405     4,267     13,240 12,678
Interest expense, net 1,435     937     3,216 3,100
Segment profit (loss) before income tax expense (1,450)     604     (13,611) (12,884)
Income tax expense (benefit) (1,526)     (236)     (5,588) (5,357)
Net income (loss) 76 $ (4,326) $ (3,773) 840 $ (4,601) $ (3,766) (8,023) (7,527)
Energy                
Segment reconciliation                
Contract revenue 102,625     81,524     262,186 209,977
Depreciation and amortization 4,166     4,023     12,506 11,934
Interest expense, net             8 5
Segment profit (loss) before income tax expense             (12,525) (5,607)
Income tax expense (benefit)             (5,143) (2,331)
Net income (loss)             (7,382) (3,275)
Engineering and Consulting                
Segment reconciliation                
Contract revenue 18,774     16,773     53,696 51,560
Depreciation and amortization 239     244     734 744
Segment profit (loss) before income tax expense             8,111 7,507
Income tax expense (benefit)             3,330 3,122
Net income (loss)             4,780 4,386
Operating Segments [Member] | Energy                
Segment reconciliation                
Interest expense, net 3              
Segment profit (loss) before income tax expense (1,815)     2,138        
Income tax expense (benefit) (1,565)     610        
Net income (loss) (250)     1,529        
Operating Segments [Member] | Engineering and Consulting                
Segment reconciliation                
Segment profit (loss) before income tax expense 3,473     2,673        
Income tax expense (benefit) 1,781     1,286        
Net income (loss) 1,692     1,387        
Corporate, Non-Segment [Member]                
Segment reconciliation                
Interest expense, net 1,432     937     3,208 3,095
Segment profit (loss) before income tax expense (3,108)     (4,207)     (9,197) (14,784)
Income tax expense (benefit) (1,742)     (2,132)     (3,775) (6,148)
Net income (loss) (1,366)     (2,076)     (5,421) (8,638)
Intersegment Eliminations [Member]                
Segment reconciliation                
Contract revenue $ 0     $ 0     $ 0 $ 0
XML 74 R64.htm IDEA: XBRL DOCUMENT v3.22.2.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Assets (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Oct. 01, 2021
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets $ 395,111 $ 394,422 $ 386,906
Energy      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 336,036   331,573
Engineering and Consulting      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 22,630   23,134
Operating Segments [Member] | Energy      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 336,036   331,573
Operating Segments [Member] | Engineering and Consulting      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 22,630   23,134
Corporate, Non-Segment [Member]      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 59,575   55,329
Intersegment Eliminations [Member]      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets $ (23,130)   $ (23,130)
XML 75 R65.htm IDEA: XBRL DOCUMENT v3.22.2.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Sep. 30, 2022
Oct. 01, 2021
Disaggregation of Revenue [Line Items]        
Revenue $ 121,399 $ 98,297 $ 315,882 $ 261,537
Domestic        
Disaggregation of Revenue [Line Items]        
Revenue     315,882 261,537
Energy        
Disaggregation of Revenue [Line Items]        
Revenue 102,625 81,524 262,186 209,977
Energy | Domestic        
Disaggregation of Revenue [Line Items]        
Revenue     262,186 209,977
Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 18,774 16,773 53,696 51,560
Engineering and Consulting | Domestic        
Disaggregation of Revenue [Line Items]        
Revenue     53,696 51,560
Commercial        
Disaggregation of Revenue [Line Items]        
Revenue 8,224 9,309 25,968 24,723
Commercial | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 6,848 7,741 21,638 20,685
Commercial | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 1,376 1,568 4,330 4,037
Government        
Disaggregation of Revenue [Line Items]        
Revenue 65,421 33,718 145,432 93,157
Government | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 48,073 18,537 96,293 45,766
Government | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 17,348 15,181 49,139 47,391
Utilities        
Disaggregation of Revenue [Line Items]        
Revenue 47,754 55,269 144,482 143,657
Utilities | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 47,704 55,245 144,255 143,525
Utilities | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 50 24 227 132
Time-and-materials        
Disaggregation of Revenue [Line Items]        
Revenue 21,348 22,264 64,094 65,504
Time-and-materials | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 7,468 9,104 23,873 25,060
Time-and-materials | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 13,880 13,160 40,221 40,444
Unit-based        
Disaggregation of Revenue [Line Items]        
Revenue 46,830 54,120 139,070 140,505
Unit-based | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 43,039 51,470 128,540 132,688
Unit-based | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 3,791 2,650 10,530 7,817
Fixed price        
Disaggregation of Revenue [Line Items]        
Revenue 53,221 21,913 112,718 55,528
Fixed price | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 52,118 20,950 109,773 52,229
Fixed price | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue $ 1,103 $ 963 $ 2,945 $ 3,299
XML 76 R66.htm IDEA: XBRL DOCUMENT v3.22.2.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Geographical Information (Details)
Sep. 30, 2022
state
SEGMENT AND GEOGRAPHICAL INFORMATION  
Number of states in which entity operates 23
XML 77 R67.htm IDEA: XBRL DOCUMENT v3.22.2.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Concentration Risk (Details)
3 Months Ended 9 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Sep. 30, 2022
Oct. 01, 2021
Geographic Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member] | CALIFORNIA        
Concentration Risk [Line Items]        
Concentration risk percentage 37.20% 38.90% 40.30% 36.20%
Geographic Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member] | NEW YORK        
Concentration Risk [Line Items]        
Concentration risk percentage 23.40% 19.00% 21.40% 20.70%
Top Ten Customers, Three Months Ended 2022 September 30 | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage 57.20%      
Top Ten Customers, Nine Months Ended 2022 September 30 | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage     54.50%  
Top Ten Customers, Three Months Ended 2021 October 01 | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage   52.40%    
Top Ten Customers, Nine Months Ended 2021 October 01 | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage       46.80%
Pueblo County School District | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage   13.30%    
Los Angeles Department of Water and Power | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage   17.00% 13.20%  
Los Angeles Department of Water and Power | Customer Concentration Risk [Member] | Revenue from Contract with Customer, Segment Benchmark [Member] | Energy        
Concentration Risk [Line Items]        
Concentration risk percentage   20.40%    
Pueblo County School District, Dormitory Authority State of New York, and Los Angeles Department of Water and Power | Customer Concentration Risk [Member] | Revenue from Contract with Customer, Segment Benchmark [Member] | Energy        
Concentration Risk [Line Items]        
Concentration risk percentage 38.30%      
Los Angeles Department of Water and Power and Pueblo County School District | Customer Concentration Risk [Member] | Revenue from Contract with Customer, Segment Benchmark [Member] | Energy        
Concentration Risk [Line Items]        
Concentration risk percentage     26.50%  
Los Angeles Department of Water and Power and Consolidated Edison of New York | Customer Concentration Risk [Member] | Revenue from Contract with Customer, Segment Benchmark [Member] | Energy        
Concentration Risk [Line Items]        
Concentration risk percentage       21.50%
City of Elk Grove | Customer Concentration Risk [Member] | Revenue from Contract with Customer, Segment Benchmark [Member] | Engineering and Consulting        
Concentration Risk [Line Items]        
Concentration risk percentage       12.20%
XML 78 R68.htm IDEA: XBRL DOCUMENT v3.22.2.2
INCOME TAXES - Valuation Allowance (Details) - USD ($)
$ in Thousands
9 Months Ended 12 Months Ended
Sep. 30, 2022
Dec. 31, 2021
Dec. 28, 2018
Jan. 01, 2021
Valuation Allowance [Line Items]        
Increase (decrease) in valuation allowance $ 0      
Valuation allowance   $ 1,200   $ 86
California Franchise Tax Board [Member]        
Valuation Allowance [Line Items]        
Increase (decrease) in valuation allowance     $ 86  
New Jersey Division of Taxation [Member]        
Valuation Allowance [Line Items]        
Increase (decrease) in valuation allowance   $ 1,100    
XML 79 R69.htm IDEA: XBRL DOCUMENT v3.22.2.2
INCOME TAXES - Uncertain Tax Positions (Details)
$ in Thousands
Sep. 30, 2022
USD ($)
Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued [Abstract]  
Liability for uncertain tax positions $ 0
XML 80 R70.htm IDEA: XBRL DOCUMENT v3.22.2.2
INCOME TAXES - Income Tax Expense (Benefit) (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Sep. 30, 2022
Oct. 01, 2021
INCOME TAXES        
Income tax expense (benefit) $ (1,526) $ (236) $ (5,588) $ (5,357)
XML 81 R71.htm IDEA: XBRL DOCUMENT v3.22.2.2
INCOME TAXES - Examinations (Details) - New York State Division of Taxation and Finance [Member]
Jun. 10, 2021
Tax Year 2017 [Member]  
Income Tax Examination [Line Items]  
Income tax examination, year under examination 2017
Tax Year 2018 [Member]  
Income Tax Examination [Line Items]  
Income tax examination, year under examination 2018
Tax Year 2019 [Member]  
Income Tax Examination [Line Items]  
Income tax examination, year under examination 2019
XML 82 R72.htm IDEA: XBRL DOCUMENT v3.22.2.2
EARNINGS PER SHARE (EPS) - Computation (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Jul. 01, 2022
Apr. 01, 2022
Oct. 01, 2021
Jul. 02, 2021
Apr. 02, 2021
Sep. 30, 2022
Oct. 01, 2021
Net Income (Loss) Available to Common Stockholders, Diluted [Abstract]                
Net income (loss) $ 76 $ (4,326) $ (3,773) $ 840 $ (4,601) $ (3,766) $ (8,023) $ (7,527)
Net income (loss) - basic 76     840     (8,023) (7,527)
Net income (loss) - diluted $ 76     $ 840     $ (8,023) $ (7,527)
Weighted Average Number of Shares Outstanding, Diluted [Abstract]                
Weighted-average common shares outstanding (in shares) 13,110     12,606     12,971 12,391
Effect of dilutive stock options and restricted stock awards (in shares) 250     535        
Weighted-average common shares outstanding-diluted (in shares) 13,360     13,141     12,971 12,391
Earnings Per Share, Diluted [Abstract]                
Basic (in dollars per share) $ 0.01     $ 0.07     $ (0.62) $ (0.61)
Diluted (in dollars per share) $ 0.01     $ 0.06     $ (0.62) $ (0.61)
XML 83 R73.htm IDEA: XBRL DOCUMENT v3.22.2.2
EARNINGS PER SHARE (EPS) - Antidilutive Securities (Details) - shares
shares in Thousands
3 Months Ended
Sep. 30, 2022
Oct. 01, 2021
Share-Based Payment Arrangement [Member]    
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]    
Antidilutive securities excluded from computation of earnings per share (in shares) 401 26
XML 84 R74.htm IDEA: XBRL DOCUMENT v3.22.2.2
SUBSEQUENT EVENTS (Details) - Notes Payable to Banks [Member]
$ in Millions
Nov. 01, 2022
USD ($)
Mar. 08, 2022
Apr. 30, 2021
Credit Agreement 2019 [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent)   0.15% 0.15%
Credit Agreement 2019 [Member] | Maximum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent)   0.45% 0.40%
Credit Agreement 2019 [Member] | Base Rate [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate, interest period (as a percent)   0.10%  
Credit Agreement 2019 [Member] | Base Rate [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate (as a percent)   0.125% 0.125%
Credit Agreement 2019 [Member] | Base Rate [Member] | Maximum [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate (as a percent)   1.50% 1.25%
Credit Agreement 2019 [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate, interest period (as a percent)   0.15%  
Credit Agreement 2019 [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate (as a percent)   1.125%  
Interest rate (as a percent)   0.00%  
Credit Agreement 2019 [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Maximum [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate (as a percent)   2.50%  
Letter of Credit [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent)   0.84% 0.84%
Letter of Credit [Member] | Maximum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent)   1.875% 1.688%
Subsequent Event [Member] | Credit Agreement 2019 [Member]      
Subsequent Event [Line Items]      
Debt instrument, covenants, Total Leverage Ratio, access to accordion feature, high end of range 3.0    
Subsequent Event [Member] | Credit Agreement 2019, During Extended Covenant Relief Period [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent) 0.50%    
Subsequent Event [Member] | Credit Agreement 2019, During Extended Covenant Relief Period [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate (as a percent) 4.00%    
Subsequent Event [Member] | Credit Agreement 2019, During Extended Covenant Relief Period [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Interest rate (as a percent) 0.00%    
Subsequent Event [Member] | Credit Agreement 2019, After Extended Covenant Relief Period [Member] | Base Rate [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate, interest period (as a percent) 0.10%    
Subsequent Event [Member] | Credit Agreement 2019, After Extended Covenant Relief Period [Member] | Base Rate [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate (as a percent) 0.125%    
Subsequent Event [Member] | Credit Agreement 2019, After Extended Covenant Relief Period [Member] | Base Rate [Member] | Maximum [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate (as a percent) 1.25%    
Subsequent Event [Member] | Credit Agreement 2019, After Extended Covenant Relief Period [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate, interest period (as a percent) 0.15%    
Subsequent Event [Member] | Credit Agreement 2019, After Extended Covenant Relief Period [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate (as a percent) 1.125%    
Interest rate (as a percent) 0.00%    
Subsequent Event [Member] | Credit Agreement 2019, After Extended Covenant Relief Period [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Maximum [Member]      
Subsequent Event [Line Items]      
Spread on floating interest rate (as a percent) 2.25%    
Subsequent Event [Member] | Revolving Credit Facility [Member]      
Subsequent Event [Line Items]      
Maximum borrowing capacity during the period from November 1, 2022 through the date on which financial statements and compliance documents have been received by the Administrative Agent for the fiscal quarter ending March 31, 2023 $ 10.0    
Subsequent Event [Member] | Revolving Credit Facility [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent) 0.15%    
Subsequent Event [Member] | Revolving Credit Facility [Member] | Maximum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent) 0.40%    
Subsequent Event [Member] | Letter of Credit [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent) 0.84%    
Subsequent Event [Member] | Letter of Credit [Member] | Maximum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent) 1.688%    
Subsequent Event [Member] | Delayed Draw Term Loan Facility [Member] | Minimum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent) 0.15%    
Subsequent Event [Member] | Delayed Draw Term Loan Facility [Member] | Maximum [Member]      
Subsequent Event [Line Items]      
Commitment fee (as a percent) 0.40%    
XML 85 wldn-20220930x10q_htm.xml IDEA: XBRL DOCUMENT 0001370450 wldn:Covid19Member 2022-11-02 2022-11-02 0001370450 wldn:Covid19Member 2021-01-01 2021-12-31 0001370450 wldn:Covid19Member 2020-01-01 2020-12-31 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2021-04-30 2021-04-30 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2021-04-29 2021-04-29 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2019-06-26 2019-06-26 0001370450 us-gaap:RevolvingCreditFacilityMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-11-01 0001370450 srt:MaximumMember 2022-01-01 2022-09-30 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-11-01 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2022-08-02 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2022-09-30 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2021-04-30 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2019-06-26 0001370450 wldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-11-01 2022-11-01 0001370450 wldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember us-gaap:BaseRateMember 2022-11-01 2022-11-01 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-03-08 2022-03-08 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:BaseRateMember 2022-03-08 2022-03-08 0001370450 srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-01-01 2022-12-30 0001370450 srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:BaseRateMember 2022-01-01 2022-12-30 0001370450 us-gaap:CostOfSalesMember 2022-01-01 2022-09-30 0001370450 us-gaap:NewJerseyDivisionOfTaxationMember 2021-01-02 2021-12-31 0001370450 us-gaap:CaliforniaFranchiseTaxBoardMember 2017-12-30 2018-12-28 0001370450 us-gaap:CommonStockMember 2022-07-02 2022-09-30 0001370450 us-gaap:CommonStockMember 2021-07-03 2021-10-01 0001370450 us-gaap:CommonStockMember 2021-01-02 2021-04-02 0001370450 us-gaap:RetainedEarningsMember 2022-09-30 0001370450 us-gaap:AdditionalPaidInCapitalMember 2022-09-30 0001370450 us-gaap:RetainedEarningsMember 2022-07-01 0001370450 us-gaap:AdditionalPaidInCapitalMember 2022-07-01 0001370450 2022-07-01 0001370450 us-gaap:RetainedEarningsMember 2022-04-01 0001370450 us-gaap:AdditionalPaidInCapitalMember 2022-04-01 0001370450 2022-04-01 0001370450 us-gaap:RetainedEarningsMember 2021-12-31 0001370450 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0001370450 us-gaap:RetainedEarningsMember 2021-10-01 0001370450 us-gaap:AdditionalPaidInCapitalMember 2021-10-01 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-10-01 0001370450 us-gaap:RetainedEarningsMember 2021-07-02 0001370450 us-gaap:AdditionalPaidInCapitalMember 2021-07-02 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-07-02 0001370450 2021-07-02 0001370450 us-gaap:RetainedEarningsMember 2021-04-02 0001370450 us-gaap:AdditionalPaidInCapitalMember 2021-04-02 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-04-02 0001370450 2021-04-02 0001370450 us-gaap:RetainedEarningsMember 2021-01-01 0001370450 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 0001370450 us-gaap:CommonStockMember 2022-04-02 2022-07-01 0001370450 us-gaap:CommonStockMember 2022-01-01 2022-04-01 0001370450 wldn:UnitBasedContractMember wldn:EngineeringConsultingServicesMember 2022-07-02 2022-09-30 0001370450 wldn:UnitBasedContractMember wldn:EnergyMember 2022-07-02 2022-09-30 0001370450 wldn:PublicUtilityMember wldn:EngineeringConsultingServicesMember 2022-07-02 2022-09-30 0001370450 wldn:PublicUtilityMember wldn:EnergyMember 2022-07-02 2022-09-30 0001370450 wldn:GovernmentsMember wldn:EngineeringConsultingServicesMember 2022-07-02 2022-09-30 0001370450 wldn:GovernmentsMember wldn:EnergyMember 2022-07-02 2022-09-30 0001370450 wldn:CommercialMember wldn:EngineeringConsultingServicesMember 2022-07-02 2022-09-30 0001370450 wldn:CommercialMember wldn:EnergyMember 2022-07-02 2022-09-30 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EngineeringConsultingServicesMember 2022-07-02 2022-09-30 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EnergyMember 2022-07-02 2022-09-30 0001370450 us-gaap:FixedPriceContractMember wldn:EngineeringConsultingServicesMember 2022-07-02 2022-09-30 0001370450 us-gaap:FixedPriceContractMember wldn:EnergyMember 2022-07-02 2022-09-30 0001370450 wldn:UnitBasedContractMember 2022-07-02 2022-09-30 0001370450 wldn:PublicUtilityMember 2022-07-02 2022-09-30 0001370450 wldn:GovernmentsMember 2022-07-02 2022-09-30 0001370450 wldn:CommercialMember 2022-07-02 2022-09-30 0001370450 us-gaap:TimeAndMaterialsContractMember 2022-07-02 2022-09-30 0001370450 us-gaap:IntersegmentEliminationMember 2022-07-02 2022-09-30 0001370450 us-gaap:FixedPriceContractMember 2022-07-02 2022-09-30 0001370450 wldn:UnitBasedContractMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-09-30 0001370450 wldn:UnitBasedContractMember wldn:EnergyMember 2022-01-01 2022-09-30 0001370450 wldn:PublicUtilityMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-09-30 0001370450 wldn:PublicUtilityMember wldn:EnergyMember 2022-01-01 2022-09-30 0001370450 wldn:GovernmentsMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-09-30 0001370450 wldn:GovernmentsMember wldn:EnergyMember 2022-01-01 2022-09-30 0001370450 wldn:CommercialMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-09-30 0001370450 wldn:CommercialMember wldn:EnergyMember 2022-01-01 2022-09-30 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-09-30 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EnergyMember 2022-01-01 2022-09-30 0001370450 us-gaap:FixedPriceContractMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-09-30 0001370450 us-gaap:FixedPriceContractMember wldn:EnergyMember 2022-01-01 2022-09-30 0001370450 country:US wldn:EngineeringConsultingServicesMember 2022-01-01 2022-09-30 0001370450 country:US wldn:EnergyMember 2022-01-01 2022-09-30 0001370450 wldn:UnitBasedContractMember 2022-01-01 2022-09-30 0001370450 wldn:PublicUtilityMember 2022-01-01 2022-09-30 0001370450 wldn:GovernmentsMember 2022-01-01 2022-09-30 0001370450 wldn:CommercialMember 2022-01-01 2022-09-30 0001370450 us-gaap:TimeAndMaterialsContractMember 2022-01-01 2022-09-30 0001370450 us-gaap:IntersegmentEliminationMember 2022-01-01 2022-09-30 0001370450 us-gaap:FixedPriceContractMember 2022-01-01 2022-09-30 0001370450 country:US 2022-01-01 2022-09-30 0001370450 wldn:UnitBasedContractMember wldn:EngineeringConsultingServicesMember 2021-07-03 2021-10-01 0001370450 wldn:UnitBasedContractMember wldn:EnergyMember 2021-07-03 2021-10-01 0001370450 wldn:PublicUtilityMember wldn:EngineeringConsultingServicesMember 2021-07-03 2021-10-01 0001370450 wldn:PublicUtilityMember wldn:EnergyMember 2021-07-03 2021-10-01 0001370450 wldn:GovernmentsMember wldn:EngineeringConsultingServicesMember 2021-07-03 2021-10-01 0001370450 wldn:GovernmentsMember wldn:EnergyMember 2021-07-03 2021-10-01 0001370450 wldn:CommercialMember wldn:EngineeringConsultingServicesMember 2021-07-03 2021-10-01 0001370450 wldn:CommercialMember wldn:EnergyMember 2021-07-03 2021-10-01 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EngineeringConsultingServicesMember 2021-07-03 2021-10-01 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EnergyMember 2021-07-03 2021-10-01 0001370450 us-gaap:FixedPriceContractMember wldn:EngineeringConsultingServicesMember 2021-07-03 2021-10-01 0001370450 us-gaap:FixedPriceContractMember wldn:EnergyMember 2021-07-03 2021-10-01 0001370450 wldn:UnitBasedContractMember 2021-07-03 2021-10-01 0001370450 wldn:PublicUtilityMember 2021-07-03 2021-10-01 0001370450 wldn:GovernmentsMember 2021-07-03 2021-10-01 0001370450 wldn:CommercialMember 2021-07-03 2021-10-01 0001370450 us-gaap:TimeAndMaterialsContractMember 2021-07-03 2021-10-01 0001370450 us-gaap:IntersegmentEliminationMember 2021-07-03 2021-10-01 0001370450 us-gaap:FixedPriceContractMember 2021-07-03 2021-10-01 0001370450 wldn:UnitBasedContractMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-10-01 0001370450 wldn:UnitBasedContractMember wldn:EnergyMember 2021-01-02 2021-10-01 0001370450 wldn:PublicUtilityMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-10-01 0001370450 wldn:PublicUtilityMember wldn:EnergyMember 2021-01-02 2021-10-01 0001370450 wldn:GovernmentsMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-10-01 0001370450 wldn:GovernmentsMember wldn:EnergyMember 2021-01-02 2021-10-01 0001370450 wldn:CommercialMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-10-01 0001370450 wldn:CommercialMember wldn:EnergyMember 2021-01-02 2021-10-01 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-10-01 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EnergyMember 2021-01-02 2021-10-01 0001370450 us-gaap:FixedPriceContractMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-10-01 0001370450 us-gaap:FixedPriceContractMember wldn:EnergyMember 2021-01-02 2021-10-01 0001370450 country:US wldn:EngineeringConsultingServicesMember 2021-01-02 2021-10-01 0001370450 country:US wldn:EnergyMember 2021-01-02 2021-10-01 0001370450 wldn:UnitBasedContractMember 2021-01-02 2021-10-01 0001370450 wldn:PublicUtilityMember 2021-01-02 2021-10-01 0001370450 wldn:GovernmentsMember 2021-01-02 2021-10-01 0001370450 wldn:CommercialMember 2021-01-02 2021-10-01 0001370450 us-gaap:TimeAndMaterialsContractMember 2021-01-02 2021-10-01 0001370450 us-gaap:IntersegmentEliminationMember 2021-01-02 2021-10-01 0001370450 us-gaap:FixedPriceContractMember 2021-01-02 2021-10-01 0001370450 country:US 2021-01-02 2021-10-01 0001370450 wldn:ComputerHardwareAndSoftwareMember 2022-09-30 0001370450 wldn:AutomobilesTrucksAndFieldEquipmentMember 2022-09-30 0001370450 us-gaap:LeaseholdImprovementsMember 2022-09-30 0001370450 us-gaap:FurnitureAndFixturesMember 2022-09-30 0001370450 wldn:ComputerHardwareAndSoftwareMember 2021-12-31 0001370450 wldn:AutomobilesTrucksAndFieldEquipmentMember 2021-12-31 0001370450 us-gaap:LeaseholdImprovementsMember 2021-12-31 0001370450 us-gaap:FurnitureAndFixturesMember 2021-12-31 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-04-01 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-07-03 2021-10-01 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-04-03 2021-07-02 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-02 2021-04-02 0001370450 us-gaap:RetainedEarningsMember 2022-07-02 2022-09-30 0001370450 us-gaap:RetainedEarningsMember 2022-04-02 2022-07-01 0001370450 us-gaap:RetainedEarningsMember 2022-01-01 2022-04-01 0001370450 us-gaap:RetainedEarningsMember 2021-07-03 2021-10-01 0001370450 us-gaap:RetainedEarningsMember 2021-04-03 2021-07-02 0001370450 us-gaap:RetainedEarningsMember 2021-01-02 2021-04-02 0001370450 wldn:DelayedDrawTermLoanFacilityMember us-gaap:NotesPayableToBanksMember 2019-06-26 0001370450 us-gaap:RevolvingCreditFacilityMember us-gaap:NotesPayableToBanksMember 2019-06-26 0001370450 srt:MinimumMember wldn:DelayedDrawTermLoanFacilityMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-11-01 2022-11-01 0001370450 srt:MinimumMember us-gaap:RevolvingCreditFacilityMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-11-01 2022-11-01 0001370450 srt:MinimumMember us-gaap:LetterOfCreditMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-11-01 2022-11-01 0001370450 srt:MaximumMember wldn:DelayedDrawTermLoanFacilityMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-11-01 2022-11-01 0001370450 srt:MaximumMember us-gaap:RevolvingCreditFacilityMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-11-01 2022-11-01 0001370450 srt:MaximumMember us-gaap:LetterOfCreditMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-11-01 2022-11-01 0001370450 wldn:CreditAgreement2019DuringExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-11-01 2022-11-01 0001370450 srt:MinimumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2022-03-08 2022-03-08 0001370450 srt:MinimumMember us-gaap:LetterOfCreditMember us-gaap:NotesPayableToBanksMember 2022-03-08 2022-03-08 0001370450 srt:MaximumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2022-03-08 2022-03-08 0001370450 srt:MaximumMember us-gaap:LetterOfCreditMember us-gaap:NotesPayableToBanksMember 2022-03-08 2022-03-08 0001370450 srt:MinimumMember srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2022-01-01 2022-12-30 0001370450 srt:MinimumMember srt:ScenarioForecastMember us-gaap:LetterOfCreditMember us-gaap:NotesPayableToBanksMember 2022-01-01 2022-12-30 0001370450 srt:MaximumMember srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2022-01-01 2022-12-30 0001370450 srt:MaximumMember srt:ScenarioForecastMember us-gaap:LetterOfCreditMember us-gaap:NotesPayableToBanksMember 2022-01-01 2022-12-30 0001370450 srt:MinimumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2021-04-30 2021-04-30 0001370450 srt:MinimumMember us-gaap:LetterOfCreditMember us-gaap:NotesPayableToBanksMember 2021-04-30 2021-04-30 0001370450 srt:MaximumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2021-04-30 2021-04-30 0001370450 srt:MaximumMember us-gaap:LetterOfCreditMember us-gaap:NotesPayableToBanksMember 2021-04-30 2021-04-30 0001370450 srt:MinimumMember 2022-09-30 0001370450 srt:MaximumMember 2022-09-30 0001370450 us-gaap:NewYorkStateDivisionOfTaxationAndFinanceMember us-gaap:TaxYear2019Member 2021-06-10 2021-06-10 0001370450 us-gaap:NewYorkStateDivisionOfTaxationAndFinanceMember us-gaap:TaxYear2018Member 2021-06-10 2021-06-10 0001370450 us-gaap:NewYorkStateDivisionOfTaxationAndFinanceMember us-gaap:TaxYear2017Member 2021-06-10 2021-06-10 0001370450 us-gaap:OperatingSegmentsMember wldn:EngineeringConsultingServicesMember 2022-07-02 2022-09-30 0001370450 us-gaap:OperatingSegmentsMember wldn:EnergyMember 2022-07-02 2022-09-30 0001370450 us-gaap:CorporateNonSegmentMember 2022-07-02 2022-09-30 0001370450 us-gaap:CorporateNonSegmentMember 2022-01-01 2022-09-30 0001370450 us-gaap:OperatingSegmentsMember wldn:EngineeringConsultingServicesMember 2021-07-03 2021-10-01 0001370450 us-gaap:OperatingSegmentsMember wldn:EnergyMember 2021-07-03 2021-10-01 0001370450 us-gaap:CorporateNonSegmentMember 2021-07-03 2021-10-01 0001370450 us-gaap:CorporateNonSegmentMember 2021-01-02 2021-10-01 0001370450 wldn:Covid19Member 2022-01-01 2022-09-30 0001370450 wldn:EngineeringConsultingServicesMember 2021-12-31 0001370450 wldn:EnergyMember 2021-12-31 0001370450 2022-10-01 2022-12-30 0001370450 srt:MinimumMember 2022-01-01 2022-12-30 0001370450 srt:MaximumMember 2022-01-01 2022-12-30 0001370450 2022-01-01 2022-12-30 0001370450 srt:MinimumMember 2022-01-01 2022-04-01 0001370450 srt:MaximumMember 2022-01-01 2022-04-01 0001370450 2021-10-02 2021-12-31 0001370450 srt:MinimumMember us-gaap:TradeNamesMember 2022-01-01 2022-09-30 0001370450 srt:MinimumMember us-gaap:NoncompeteAgreementsMember 2022-01-01 2022-09-30 0001370450 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2022-01-01 2022-09-30 0001370450 srt:MaximumMember us-gaap:TradeNamesMember 2022-01-01 2022-09-30 0001370450 srt:MaximumMember us-gaap:NoncompeteAgreementsMember 2022-01-01 2022-09-30 0001370450 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2022-01-01 2022-09-30 0001370450 us-gaap:OrderOrProductionBacklogMember 2022-01-01 2022-09-30 0001370450 us-gaap:DevelopedTechnologyRightsMember 2022-01-01 2022-09-30 0001370450 us-gaap:TradeNamesMember 2022-09-30 0001370450 us-gaap:OrderOrProductionBacklogMember 2022-09-30 0001370450 us-gaap:NoncompeteAgreementsMember 2022-09-30 0001370450 us-gaap:DevelopedTechnologyRightsMember 2022-09-30 0001370450 us-gaap:CustomerRelationshipsMember 2022-09-30 0001370450 us-gaap:TradeNamesMember 2021-12-31 0001370450 us-gaap:OrderOrProductionBacklogMember 2021-12-31 0001370450 us-gaap:NoncompeteAgreementsMember 2021-12-31 0001370450 us-gaap:DevelopedTechnologyRightsMember 2021-12-31 0001370450 us-gaap:CustomerRelationshipsMember 2021-12-31 0001370450 2021-01-02 2021-12-31 0001370450 us-gaap:InterestRateSwapMember us-gaap:CashFlowHedgingMember 2022-01-31 0001370450 us-gaap:InterestRateSwapMember us-gaap:CashFlowHedgingMember 2019-01-31 0001370450 wldn:EngineeringConsultingServicesMember 2022-07-02 2022-09-30 0001370450 wldn:EnergyMember 2022-07-02 2022-09-30 0001370450 wldn:EngineeringConsultingServicesMember 2022-01-01 2022-09-30 0001370450 wldn:EnergyMember 2022-01-01 2022-09-30 0001370450 wldn:EngineeringConsultingServicesMember 2021-07-03 2021-10-01 0001370450 wldn:EnergyMember 2021-07-03 2021-10-01 0001370450 wldn:EngineeringConsultingServicesMember 2021-01-02 2021-10-01 0001370450 wldn:EnergyMember 2021-01-02 2021-10-01 0001370450 wldn:QualifiedCashOrDeferredArrangementMember 2022-01-01 2022-09-30 0001370450 wldn:DefinedContributionPlanMember 2022-01-01 2022-09-30 0001370450 wldn:DefinedContributionPlanMember 2021-01-02 2021-10-01 0001370450 srt:MinimumMember srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-12-30 0001370450 srt:MinimumMember wldn:CreditAgreement2019DuringExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-11-01 0001370450 srt:MinimumMember wldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-11-01 0001370450 srt:MinimumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-03-08 0001370450 srt:MinimumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:LondonInterbankOfferedRateLIBORMember 2021-04-30 0001370450 wldn:TermAloanMember us-gaap:NotesPayableToBanksMember 2019-06-26 0001370450 wldn:TermAloanMember us-gaap:NotesPayableToBanksMember 2022-09-30 0001370450 wldn:OtherDebtMember us-gaap:NotesPayableOtherPayablesMember 2022-09-30 0001370450 wldn:DelayedDrawTermLoanFacilityMember us-gaap:NotesPayableToBanksMember 2022-09-30 0001370450 wldn:TermAloanMember us-gaap:NotesPayableToBanksMember 2021-12-31 0001370450 wldn:OtherDebtMember us-gaap:NotesPayableOtherPayablesMember 2021-12-31 0001370450 wldn:DelayedDrawTermLoanFacilityMember us-gaap:NotesPayableToBanksMember 2021-12-31 0001370450 srt:MinimumMember wldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-11-01 2022-11-01 0001370450 srt:MinimumMember wldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember us-gaap:BaseRateMember 2022-11-01 2022-11-01 0001370450 srt:MaximumMember wldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-11-01 2022-11-01 0001370450 srt:MaximumMember wldn:CreditAgreement2019AfterExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember us-gaap:BaseRateMember 2022-11-01 2022-11-01 0001370450 wldn:CreditAgreement2019DuringExtendedCovenantReliefPeriodMember us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-11-01 2022-11-01 0001370450 srt:MinimumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-03-08 2022-03-08 0001370450 srt:MinimumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:BaseRateMember 2022-03-08 2022-03-08 0001370450 srt:MaximumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-03-08 2022-03-08 0001370450 srt:MaximumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:BaseRateMember 2022-03-08 2022-03-08 0001370450 srt:MinimumMember srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-01-01 2022-12-30 0001370450 srt:MinimumMember srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:BaseRateMember 2022-01-01 2022-12-30 0001370450 srt:MaximumMember srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-01-01 2022-12-30 0001370450 srt:MaximumMember srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:BaseRateMember 2022-01-01 2022-12-30 0001370450 srt:MinimumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:LondonInterbankOfferedRateLIBORMember 2021-04-30 2021-04-30 0001370450 srt:MinimumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:BaseRateMember 2021-04-30 2021-04-30 0001370450 srt:MaximumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:LondonInterbankOfferedRateLIBORMember 2021-04-30 2021-04-30 0001370450 srt:MaximumMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:BaseRateMember 2021-04-30 2021-04-30 0001370450 wldn:AccountsReceivableNetCurrentMember 2021-12-31 0001370450 wldn:PuebloCountySchoolDistrictDormitoryAuthorityStateOfNewYorkAndLosAngelesDepartmentOfWaterAndPowerMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EnergyMember 2022-07-02 2022-09-30 0001370450 wldn:TopTenCustomersThreeMonthsEnded2022September30Member us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-07-02 2022-09-30 0001370450 stpr:NY us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2022-07-02 2022-09-30 0001370450 stpr:CA us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2022-07-02 2022-09-30 0001370450 wldn:LosAngelesDepartmentOfWaterAndPowerAndPuebloCountySchoolDistrictMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EnergyMember 2022-01-01 2022-09-30 0001370450 wldn:TopTenCustomersNineMonthsEnded2022September30Member us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-09-30 0001370450 wldn:LosAngelesDepartmentOfWaterAndPowerMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-09-30 0001370450 stpr:NY us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2022-01-01 2022-09-30 0001370450 stpr:CA us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2022-01-01 2022-09-30 0001370450 wldn:LosAngelesDepartmentOfWaterAndPowerMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EnergyMember 2021-07-03 2021-10-01 0001370450 wldn:TopTenCustomersThreeMonthsEnded2021October01Member us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2021-07-03 2021-10-01 0001370450 wldn:PuebloCountySchoolDistrictMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2021-07-03 2021-10-01 0001370450 wldn:LosAngelesDepartmentOfWaterAndPowerMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2021-07-03 2021-10-01 0001370450 stpr:NY us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2021-07-03 2021-10-01 0001370450 stpr:CA us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2021-07-03 2021-10-01 0001370450 wldn:LosAngelesDepartmentOfWaterAndPowerAndConsolidatedEdisonOfNewYorkMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EnergyMember 2021-01-02 2021-10-01 0001370450 wldn:CityOfElkGroveMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-10-01 0001370450 wldn:TopTenCustomersNineMonthsEnded2021October01Member us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2021-01-02 2021-10-01 0001370450 stpr:NY us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2021-01-02 2021-10-01 0001370450 stpr:CA us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2021-01-02 2021-10-01 0001370450 us-gaap:CommonStockMember 2022-09-30 0001370450 us-gaap:CommonStockMember 2022-07-01 0001370450 us-gaap:CommonStockMember 2022-04-01 0001370450 us-gaap:CommonStockMember 2021-12-31 0001370450 us-gaap:CommonStockMember 2021-10-01 0001370450 us-gaap:CommonStockMember 2021-07-02 0001370450 us-gaap:CommonStockMember 2021-04-02 0001370450 us-gaap:CommonStockMember 2021-01-01 0001370450 us-gaap:AccountingStandardsUpdate202101Member 2022-09-30 0001370450 2021-01-01 0001370450 2021-01-02 2021-10-01 0001370450 us-gaap:OperatingSegmentsMember wldn:EngineeringConsultingServicesMember 2022-09-30 0001370450 us-gaap:OperatingSegmentsMember wldn:EnergyMember 2022-09-30 0001370450 wldn:EngineeringConsultingServicesMember 2022-09-30 0001370450 wldn:EnergyMember 2022-09-30 0001370450 us-gaap:IntersegmentEliminationMember 2022-09-30 0001370450 us-gaap:CorporateNonSegmentMember 2022-09-30 0001370450 us-gaap:OperatingSegmentsMember wldn:EngineeringConsultingServicesMember 2021-10-01 0001370450 us-gaap:OperatingSegmentsMember wldn:EnergyMember 2021-10-01 0001370450 wldn:EngineeringConsultingServicesMember 2021-10-01 0001370450 wldn:EnergyMember 2021-10-01 0001370450 us-gaap:IntersegmentEliminationMember 2021-10-01 0001370450 us-gaap:CorporateNonSegmentMember 2021-10-01 0001370450 2021-10-01 0001370450 us-gaap:StockCompensationPlanMember 2022-07-02 2022-09-30 0001370450 us-gaap:StockCompensationPlanMember 2021-07-03 2021-10-01 0001370450 us-gaap:AdditionalPaidInCapitalMember 2021-07-03 2021-10-01 0001370450 2021-07-03 2021-10-01 0001370450 us-gaap:AdditionalPaidInCapitalMember 2022-07-02 2022-09-30 0001370450 2022-07-02 2022-09-30 0001370450 us-gaap:AdditionalPaidInCapitalMember 2022-04-02 2022-07-01 0001370450 2022-04-02 2022-07-01 0001370450 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-04-01 0001370450 2022-01-01 2022-04-01 0001370450 us-gaap:CommonStockMember 2021-04-03 2021-07-02 0001370450 us-gaap:AdditionalPaidInCapitalMember 2021-04-03 2021-07-02 0001370450 2021-04-03 2021-07-02 0001370450 us-gaap:AdditionalPaidInCapitalMember 2021-01-02 2021-04-02 0001370450 2021-01-02 2021-04-02 0001370450 2022-09-30 0001370450 2021-12-31 0001370450 2022-11-02 0001370450 2022-01-01 2022-09-30 shares iso4217:USD iso4217:USD shares pure wldn:segment wldn:state wldn:Y wldn:item wldn:contract 0 81524000 16773000 0001370450 --12-30 2022 Q3 false 76000 840000 -8023000 -7527000 0 http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization 0 0 P1Y http://fasb.org/us-gaap/2022#QualifiedPlanMember 12804000 13297000 300000 0 0.0015 0.004 10-Q true 2022-09-30 false 001-33076 WILLDAN GROUP, INC. DE 14-1951112 2401 East Katella Avenue Suite 300 Anaheim CA 92806 800 424-9144 Common Stock, par value $0.01 per share WLDN NASDAQ Yes Yes Accelerated Filer false false false 13294922 8818000 11221000 756000 1115000 60376000 67211000 74924000 59288000 5112000 6267000 4891000 4972000 154121000 148959000 21147000 16757000 130124000 130124000 12715000 15177000 44182000 52713000 11862000 13843000 20960000 16849000 395111000 394422000 23487000 36672000 50996000 35680000 2491000 10206000 12163000 13499000 15510000 15036000 970000 539000 4889000 5575000 110506000 117207000 832000 93912000 85538000 1657000 778000 8747000 10768000 78000 78000 214900000 215201000 0.01 0.01 10000000 10000000 0 0 0.01 0.01 40000000 40000000 13297000 12804000 133000 128000 176002000 167032000 -38000 4076000 12099000 180211000 179221000 395111000 394422000 121399000 98297000 315882000 261537000 21420000 16346000 61514000 48532000 62457000 43824000 153896000 111860000 83877000 60170000 215410000 160392000 20373000 19374000 60169000 57530000 2228000 2351000 6999000 7373000 1607000 4210000 6626000 14349000 4405000 4267000 13240000 12678000 9664000 6482000 25099000 19033000 38277000 36684000 112133000 110963000 -755000 1443000 -11661000 -9818000 -1435000 -937000 -3216000 -3100000 740000 98000 1266000 34000 -695000 -839000 -1950000 -3066000 -1450000 604000 -13611000 -12884000 -1526000 -236000 -5588000 -5357000 76000 840000 -8023000 -7527000 111000 38000 343000 76000 951000 -7985000 -7184000 0.01 0.07 -0.62 -0.61 0.01 0.06 -0.62 -0.61 13110000 12606000 12971000 12391000 13360000 13141000 12971000 12391000 12804000 128000 167032000 -38000 12099000 179221000 52000 1000 1560000 1561000 4000 23000 23000 27000 837000 837000 373000 3000 -3000 3305000 3305000 -3773000 -3773000 38000 38000 13206000 132000 171080000 8326000 179538000 5000 116000 116000 14000 1714000 1714000 -4326000 -4326000 13215000 132000 172678000 4000000 176810000 63000 1000 1475000 1476000 29000 247000 247000 5000 5000 -10000 1607000 1607000 76000 76000 13297000 133000 176002000 4076000 180211000 12160000 122000 149014000 -488000 20516000 169164000 66000 1000 1384000 1385000 27000 527000 527000 12000 12000 255000 2000 -3000 -1000 4206000 4206000 -3766000 -3766000 128000 128000 12508000 125000 155116000 -360000 16750000 171631000 77000 1000 850000 851000 79000 1000 3104000 3105000 207000 2000 -2000 5933000 5933000 -4601000 -4601000 104000 104000 12713000 127000 158793000 -256000 12149000 170813000 40000 1000 1270000 1271000 35000 369000 369000 1000 4210000 4210000 840000 840000 111000 111000 12789000 128000 164642000 -145000 12989000 177614000 -8023000 -7527000 13240000 12678000 -4111000 -3544000 67000 37000 230000 87000 6626000 14349000 1659000 860000 -6605000 1892000 15636000 3318000 -1155000 -376000 -256000 -2005000 -1981000 4557000 -13185000 -17787000 15354000 5726000 -1336000 1016000 245000 145000 4503000 -1710000 6969000 4898000 75000 46000 -6894000 -4852000 10206000 6615000 1577000 1724000 206000 20000000 9750000 9750000 827000 440000 270000 1747000 3036000 2656000 958000 3117000 1000 -12000 -17038000 -2403000 -23600000 11221000 28405000 8818000 4805000 2790000 2701000 -1027000 -1742000 2137000 987000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">1. ORGANIZATION AND OPERATIONS OF THE COMPAN</b><b style="font-weight:bold;">Y</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Willdan Group, Inc. (“Willdan” or the “Company”) is a provider of professional, technical and consulting services to utilities, private industry, and public agencies at all levels of government. As resources and infrastructures undergo continuous change, the Company helps organizations and their communities evolve and thrive by providing a wide range of technical services for energy solutions and government infrastructure. Through engineering, program management, policy advisory, and software and data management, the Company designs and delivers trusted, comprehensive, innovative, and proven solutions to improve efficiency, resiliency, and sustainability in energy and infrastructure.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The Company’s broad portfolio of services operates within two financial reporting segments: (1) Energy and (2) Engineering and Consulting. The interfaces and synergies between these segments are important elements of the Company’s strategy to design and deliver trusted, comprehensive, innovative, and proven solutions for its customers.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The accounting policies followed by the Company are set forth in Part II, Item 8, Note 1, <i style="font-style:italic;">Organization and Operations of the Company</i>, of the Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. In the opinion of management, all adjustments necessary to fairly state the Condensed Consolidated Financial Statements have been made. All such adjustments are of a normal, recurring nature. Certain information and footnote disclosures normally included in the Consolidated Financial Statements prepared in accordance with accounting principles generally accepted in the United States (“U.S. GAAP”) have been condensed or omitted pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). These Condensed Consolidated Financial Statements and related notes thereto should be read in conjunction with the Consolidated Financial Statements and the notes thereto included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. The results of operations for interim periods are not necessarily indicative of results to be expected for the full year.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-indent:-36pt;margin:0pt 0pt 12pt 18pt;"><i style="font-style:italic;">Fiscal Years</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company operates and reports its annual financial results based on 52 or 53-week periods ending on the Friday closest to December 31. The Company operates and reports its quarterly financial results based on the 13-week period ending on the Friday closest to June 30, September 30, and December 31 and the 13 or 14-week period ending on the Friday closest to March 31, as applicable. Fiscal year 2022, which ends on December 30, 2022, will be comprised of 52 weeks, with all quarters consisting of 13 weeks each. Fiscal year 2021, which ended on December 31, 2021, was comprised of 52 weeks, with all quarters consisting of 13 weeks each. All references to years in the notes to consolidated financial statements represent fiscal years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;padding-left:36pt;text-indent:-36pt;margin:0pt 0pt 10pt 18pt;"><i style="font-style:italic;">Use of Estimates</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the consolidated financial statements. Estimates also affect the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;padding-left:36pt;text-indent:-36pt;margin:0pt 0pt 10pt 18pt;"><i style="font-style:italic;">Historical and Current Impact of</i><i style="font-style:italic;"> Covid-19</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The coronavirus (“Covid-19”) pandemic and efforts to limit its spread negatively impacted the Company’s operations during its fiscal year 2020 and continued to impact the Company, albeit to a lesser extent, during fiscal year 2021. In California and New York, the states in which the Company has historically derived a majority of its revenue, mandatory shutdown orders were issued in March 2020 followed by phased re-openings that began in May 2020, followed by periods of curtailments as a result of resurgences of Covid-19 cases, and subsequent re-openings through 2020 and 2021. The Company’s largest program for the Los Angeles Department of Water and Power (“LADWP”) resumed in the third quarter of fiscal 2021 and was the Company’s last program suspended due to Covid-19. In addition, through fiscal year 2020 and 2021, none of the Company’s contracts were cancelled due to Covid-19.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/>Through the current fiscal year 2022, though none of the Company’s current programs are under suspension due to Covid-19 restrictions, certain market segments such as small business customers of major utilities continue to experience lingering impacts of the reduced economic activity due to the Covid-19 related mandates in 2020 and 2021. As of November 2, 2022, none of the Company’s contracts were cancelled as a result of Covid-19. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 10pt 0pt;"><i style="font-style:italic;">Asset and liability valuation and other estimates used in preparation of financial statements</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 10pt 0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/>As of September 30, 2022, the Company did <span style="-sec-ix-hidden:Hidden_c0gTZBCydEKmLl3n9tXfMw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">not</span></span> have any impairment with respect to goodwill or <span style="-sec-ix-hidden:Hidden_g2ZzJFVAfUe4y-T1qfy4Fg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">long-lived assets</span></span>, including intangible assets. Because the full extent of any impact of a resurgence of the Covid-19 outbreak and efforts to slow its spread are unknown at this time, they could, under certain circumstances, cause impairment and result in a non-cash impairment charge being recorded in future periods. Changes to the estimated future profitability of the business may require that the Company establish an additional valuation allowance against all or some portion of its net deferred tax assets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 10pt 0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/><i style="font-style:italic;">Impact on Clients and Subcontractors and Other Risks</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company primarily works for utilities, municipalities and other public agencies. Should there be a resurgence related to Covid-19, some of these customers could experience significant budget shortfalls for the current year and beyond as a result of the measures taken to mitigate the resurgence effects of the Covid-19 pandemic and/or revenue shortfalls as a result of reduced economic activity. <span style="white-space:pre-wrap;">Although none of the Company’s contracts with governmental or public agencies were materially modified during its fiscal year 2020 or fiscal year 2021, these potential budget deficits could result in delayed funding for existing contracts with the Company, postponements of new contracts or price concessions. Further, most of the Company’s clients are not committed to purchase any minimum amount of services, as the Company agreements with them are based on a “purchase order” or “master service agreement” model. As a result, they may discontinue utilizing some or all of the Company’s services with little or no notice. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"> In addition, the Company relies on subcontractors and material suppliers to complete a substantial portion of its work, especially in its Energy segment. If the Company’s significant subcontractors and material suppliers suffer significant economic harm and must limit or cease operations or file for bankruptcy as a result of the current economic slowdown, the Company’s subcontractors and material suppliers may not be able to fulfill their contractual obligations satisfactorily and the Company may not have the ability to select its subcontractors and material suppliers of choice for new contracts. If the Company’s subcontractors and material suppliers are not able to fulfill their contractual obligations, it could result in a significant increase in costs for the Company to complete the projects or cause significant delays to the realization of revenues under those projects. The ultimate impact of Covid-19 on the Company’s financial condition and results of operations will depend on all of the factors noted above, including other factors that the Company may not be able to forecast at this time. See the risk factor “<i style="font-style:italic;">The Covid-19 pandemic and health and safety measures intended to slow its spread have adversely affected, and may continue to adversely affect, our business, results of operations and financial condition.</i>” under<i style="font-style:italic;"> </i>Part I. Item 1A. “Risk Factors” of the Company’s Annual Report on Form 10-K for the year ended December 31, 2021. While Covid-19 has had an adverse effect on the Company’s business, financial condition and results of operations, the Company is unable to predict the extent or duration of future impacts at this time. </p> 2 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The accounting policies followed by the Company are set forth in Part II, Item 8, Note 1, <i style="font-style:italic;">Organization and Operations of the Company</i>, of the Notes to Consolidated Financial Statements included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. In the opinion of management, all adjustments necessary to fairly state the Condensed Consolidated Financial Statements have been made. All such adjustments are of a normal, recurring nature. Certain information and footnote disclosures normally included in the Consolidated Financial Statements prepared in accordance with accounting principles generally accepted in the United States (“U.S. GAAP”) have been condensed or omitted pursuant to the rules and regulations of the Securities and Exchange Commission (“SEC”). These Condensed Consolidated Financial Statements and related notes thereto should be read in conjunction with the Consolidated Financial Statements and the notes thereto included in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2021. The results of operations for interim periods are not necessarily indicative of results to be expected for the full year.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-indent:-36pt;margin:0pt 0pt 12pt 18pt;"><i style="font-style:italic;">Fiscal Years</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company operates and reports its annual financial results based on 52 or 53-week periods ending on the Friday closest to December 31. The Company operates and reports its quarterly financial results based on the 13-week period ending on the Friday closest to June 30, September 30, and December 31 and the 13 or 14-week period ending on the Friday closest to March 31, as applicable. Fiscal year 2022, which ends on December 30, 2022, will be comprised of 52 weeks, with all quarters consisting of 13 weeks each. Fiscal year 2021, which ended on December 31, 2021, was comprised of 52 weeks, with all quarters consisting of 13 weeks each. All references to years in the notes to consolidated financial statements represent fiscal years.</p> P364D P371D P91D P91D P91D P91D P98D P364D P91D P91D P91D P91D P364D P91D P91D P91D P91D <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;padding-left:36pt;text-indent:-36pt;margin:0pt 0pt 10pt 18pt;"><i style="font-style:italic;">Use of Estimates</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:36pt;margin:0pt 0pt 10pt 0pt;">The preparation of consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the consolidated financial statements. Estimates also affect the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;padding-left:36pt;text-indent:-36pt;margin:0pt 0pt 10pt 18pt;"><i style="font-style:italic;">Historical and Current Impact of</i><i style="font-style:italic;"> Covid-19</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The coronavirus (“Covid-19”) pandemic and efforts to limit its spread negatively impacted the Company’s operations during its fiscal year 2020 and continued to impact the Company, albeit to a lesser extent, during fiscal year 2021. In California and New York, the states in which the Company has historically derived a majority of its revenue, mandatory shutdown orders were issued in March 2020 followed by phased re-openings that began in May 2020, followed by periods of curtailments as a result of resurgences of Covid-19 cases, and subsequent re-openings through 2020 and 2021. The Company’s largest program for the Los Angeles Department of Water and Power (“LADWP”) resumed in the third quarter of fiscal 2021 and was the Company’s last program suspended due to Covid-19. In addition, through fiscal year 2020 and 2021, none of the Company’s contracts were cancelled due to Covid-19.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/>Through the current fiscal year 2022, though none of the Company’s current programs are under suspension due to Covid-19 restrictions, certain market segments such as small business customers of major utilities continue to experience lingering impacts of the reduced economic activity due to the Covid-19 related mandates in 2020 and 2021. As of November 2, 2022, none of the Company’s contracts were cancelled as a result of Covid-19. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 10pt 0pt;"><i style="font-style:italic;">Asset and liability valuation and other estimates used in preparation of financial statements</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 10pt 0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/>As of September 30, 2022, the Company did <span style="-sec-ix-hidden:Hidden_c0gTZBCydEKmLl3n9tXfMw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">not</span></span> have any impairment with respect to goodwill or <span style="-sec-ix-hidden:Hidden_g2ZzJFVAfUe4y-T1qfy4Fg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">long-lived assets</span></span>, including intangible assets. Because the full extent of any impact of a resurgence of the Covid-19 outbreak and efforts to slow its spread are unknown at this time, they could, under certain circumstances, cause impairment and result in a non-cash impairment charge being recorded in future periods. Changes to the estimated future profitability of the business may require that the Company establish an additional valuation allowance against all or some portion of its net deferred tax assets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 10pt 0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/><i style="font-style:italic;">Impact on Clients and Subcontractors and Other Risks</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company primarily works for utilities, municipalities and other public agencies. Should there be a resurgence related to Covid-19, some of these customers could experience significant budget shortfalls for the current year and beyond as a result of the measures taken to mitigate the resurgence effects of the Covid-19 pandemic and/or revenue shortfalls as a result of reduced economic activity. <span style="white-space:pre-wrap;">Although none of the Company’s contracts with governmental or public agencies were materially modified during its fiscal year 2020 or fiscal year 2021, these potential budget deficits could result in delayed funding for existing contracts with the Company, postponements of new contracts or price concessions. Further, most of the Company’s clients are not committed to purchase any minimum amount of services, as the Company agreements with them are based on a “purchase order” or “master service agreement” model. As a result, they may discontinue utilizing some or all of the Company’s services with little or no notice. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"> In addition, the Company relies on subcontractors and material suppliers to complete a substantial portion of its work, especially in its Energy segment. If the Company’s significant subcontractors and material suppliers suffer significant economic harm and must limit or cease operations or file for bankruptcy as a result of the current economic slowdown, the Company’s subcontractors and material suppliers may not be able to fulfill their contractual obligations satisfactorily and the Company may not have the ability to select its subcontractors and material suppliers of choice for new contracts. If the Company’s subcontractors and material suppliers are not able to fulfill their contractual obligations, it could result in a significant increase in costs for the Company to complete the projects or cause significant delays to the realization of revenues under those projects. The ultimate impact of Covid-19 on the Company’s financial condition and results of operations will depend on all of the factors noted above, including other factors that the Company may not be able to forecast at this time. See the risk factor “<i style="font-style:italic;">The Covid-19 pandemic and health and safety measures intended to slow its spread have adversely affected, and may continue to adversely affect, our business, results of operations and financial condition.</i>” under<i style="font-style:italic;"> </i>Part I. Item 1A. “Risk Factors” of the Company’s Annual Report on Form 10-K for the year ended December 31, 2021. While Covid-19 has had an adverse effect on the Company’s business, financial condition and results of operations, the Company is unable to predict the extent or duration of future impacts at this time. </p> 0 0 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;margin:0pt 0pt 10pt 0pt;"><b style="font-weight:bold;">2.</b><span style="font-style:italic;font-weight:bold;"> </span><b style="font-weight:bold;">RECENT ACCOUNTING PRONOUNCEMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 18pt;"><i style="font-style:italic;">Accounting Pronouncements Recently Adopted</i> </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-size:10pt;">In March 2020, the FASB issued ASU No. 2020-04, “Reference Rate Reform (Topic 848): facilitation of the Effects of Reference Rate Reform on Financial Reporting” (“ASU 2020-04”). ASU 2020-04 provides optional expedients and exceptions for applying U.S. GAAP to contract modifications and hedging relationships that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. ASU 2020-04 provides, among other things, guidance that modifications of contracts within the scope of Topic 470, Debt, should be accounted for by prospectively adjusting the effective interest rate; modifications of contracts within the scope of Topic 840, Leases, should be accounted for as a continuation of the existing contract; and, changes in the critical terms of hedging relationships, caused by reference rate reform, should not result in the de-designation of the instrument, provided certain criteria are met. In January 2021, the FASB issued ASU No. 2021-01, “Reference Rate Reform (Topic 848) - Scope” (“ASU 2021-01”). ASU 2021-01 clarifies the scope and application of ASU 2020-04 and permits entities, among other things, to elect certain optional expedients and exceptions when accounting for derivative contracts and certain hedging relationships affected by changes in the interest rates used for discounting cash flows. The Company </span><span style="font-size:10pt;">adopted</span><span style="font-size:10pt;"> this standard effective </span><span style="font-size:10pt;">March 8, 2022</span><span style="font-size:10pt;">. The Company’s previous exposure to LIBOR rates included its credit facilities and swap agreement. The adoption of this standard did not have a material impact to the Company’s Condensed Consolidated Financial Statements.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 18pt;"><i style="font-style:italic;">Accounting Pronouncements Recently Adopted</i> </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-size:10pt;">In March 2020, the FASB issued ASU No. 2020-04, “Reference Rate Reform (Topic 848): facilitation of the Effects of Reference Rate Reform on Financial Reporting” (“ASU 2020-04”). ASU 2020-04 provides optional expedients and exceptions for applying U.S. GAAP to contract modifications and hedging relationships that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. ASU 2020-04 provides, among other things, guidance that modifications of contracts within the scope of Topic 470, Debt, should be accounted for by prospectively adjusting the effective interest rate; modifications of contracts within the scope of Topic 840, Leases, should be accounted for as a continuation of the existing contract; and, changes in the critical terms of hedging relationships, caused by reference rate reform, should not result in the de-designation of the instrument, provided certain criteria are met. In January 2021, the FASB issued ASU No. 2021-01, “Reference Rate Reform (Topic 848) - Scope” (“ASU 2021-01”). ASU 2021-01 clarifies the scope and application of ASU 2020-04 and permits entities, among other things, to elect certain optional expedients and exceptions when accounting for derivative contracts and certain hedging relationships affected by changes in the interest rates used for discounting cash flows. The Company </span><span style="font-size:10pt;">adopted</span><span style="font-size:10pt;"> this standard effective </span><span style="font-size:10pt;">March 8, 2022</span><span style="font-size:10pt;">. The Company’s previous exposure to LIBOR rates included its credit facilities and swap agreement. The adoption of this standard did not have a material impact to the Company’s Condensed Consolidated Financial Statements.</span></p> true 2022-03-08 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;">3. REVENUES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company enters into contracts with its clients that contain various types of pricing provisions, including fixed price, time-and-materials, and unit-based provisions. The Company recognizes revenues in accordance with ASU 2014-09, Revenue from Contracts with Customer, codified as ASC Topic 606 and the related amendments (collectively “ASC 606”). As such, the Company identifies a contract with a customer, identifies the performance obligations in the contract, determines the transaction price, allocates the transaction price to each performance obligation in the contract and recognizes revenues when (or as) the Company satisfies a performance obligation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The following table reflects the Company’s two reportable segments and the types of contracts that each most commonly enters into for revenue generating activities.</p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"/></div></td><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"/></div></td><td style="vertical-align:bottom;white-space:nowrap;width:33.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"/></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue Recognition Method</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;background:#cceeff;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Energy</p></td><td style="vertical-align:middle;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td><td style="vertical-align:middle;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;background:#cceeff;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Software license</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Fixed price</p></td><td style="vertical-align:middle;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Percentage-of-completion</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:33.34%;background:#cceeff;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:33.34%;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Engineering and Consulting</p></td><td style="vertical-align:middle;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td><td style="vertical-align:middle;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Fixed price</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Percentage-of-completion</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Revenue on the vast majority of the Company’s contracts is recognized over time because of the continuous transfer of control to the customer. Revenue on fixed price contracts is recognized on the percentage-of-completion method based generally on the ratio of direct costs incurred-to-date to estimated total direct costs at completion. The Company uses the percentage-of-completion method to better match the level of work performed at a certain point in time in relation to the effort that will be required to complete a project. In addition, the percentage-of-completion method is a common method of revenue recognition in the Company’s industry.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:10pt 0pt 12pt 0pt;">Many of the Company’s fixed price contracts involve a high degree of subcontracted fixed price effort and are relatively short in duration, thereby lowering the risks of not properly estimating the percent complete. Revenue on time-and-materials and unit-based contracts is recognized as the work is performed in accordance with the specific rates and terms of the contract. The Company recognizes revenues for time-and-materials contracts based upon the actual hours incurred during a reporting period at contractually agreed upon rates per hour and also includes in revenue all reimbursable costs incurred during a reporting period. Certain of the Company’s time-and-materials contracts are subject to maximum contract values and, accordingly, when revenue is expected to exceed the maximum contract value, these contracts are generally recognized under the percentage-of-completion method, consistent with fixed price contracts. For unit-based contracts, the Company recognizes the contract price of units of a basic production product as revenue when the production product is delivered during a period. Revenue for amounts that have been billed but not earned is deferred, and such deferred revenue is referred to as contract liabilities in the accompanying condensed consolidated balance sheets. The Company also derives revenue from software licenses and professional services and maintenance fees. In accordance with ASC 606, the Company performs an assessment of each contract to identify the performance obligations, determine the overall transaction price for the contract, allocate the transaction price to the performance obligations, and recognize the revenue when the performance obligations are satisfied. The Company utilizes the residual approach by which it estimates the standalone selling price by reference to the total transaction price less the sum of the observable standalone selling prices of other goods or services promised in the contract. The software license revenue is typically recognized at a point in time when control is transferred to the client, which is defined as the point in time when the client can use and benefit from the license. The software license is delivered before related services are provided and is functional without services, updates, or technical support. Related professional services include training and support services in which the standalone selling price is determined based on an input measure of hours incurred to total estimated hours and is recognized over time, usually which is the life of the contract.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">To determine the proper revenue recognition method for contracts, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined contract should be accounted for as one performance obligation. With respect to the Company’s contracts, it is rare that multiple contracts should be combined into a single performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or separate a single contract into multiple performance obligations could change the amount of revenue and profit recorded in a given period. Contracts are considered to have a single performance obligation if the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts, which is mainly because the Company provides a significant service of integrating a complex set of tasks and components into a single project or capability.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="white-space:pre-wrap;">The Company may enter into contracts that include separate phases or elements. If each phase or element is negotiated separately based on the technical resources required and/or the supply and demand for the services being provided, the Company evaluates if the contracts should be segmented. If certain criteria are met, the contracts would be segmented which could result in revenues being assigned to the different elements or phases with different rates of profitability based on the relative value of each element or phase to the estimated total contract revenue. Segmented contracts may comprise up to approximately </span>2.0% to 3.0% of the Company’s consolidated contract revenue.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Contracts that cover multiple phases or elements of the project or service lifecycle (development, construction and maintenance and support) may be considered to have multiple performance obligations even when they are part of a single contract. For contracts with multiple performance obligations, the Company allocates the transaction price to each performance obligation using the best estimate of the standalone selling price of each distinct good or service in the contract. For the periods presented, the value of the separate performance obligations under contracts with multiple performance obligations (generally measurement and verification tasks under certain energy performance contracts) were not material. In cases where the Company does not provide the distinct good or service on a standalone basis, the primary method used to estimate standalone selling price is the expected cost plus a margin approach, under which the Company forecasts the Company’s expected costs of satisfying a performance obligation and then adds an appropriate margin for the distinct good or service.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company provides quality of workmanship warranties to customers that are included in the sale and are not priced or sold separately or do not provide customers with a service in addition to assurance of compliance with agreed-upon specifications and industry standards. The Company does not consider these types of warranties to be separate performance obligations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">In some cases, the Company has a master service or blanket agreement with a customer under which each task order releases the Company to perform specific portions of the overall scope in the service contract. Each task order is typically accounted for as a separate contract because the task order establishes the enforceable rights and obligations, and payment terms.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Under ASC 606, variable consideration should be considered when determining the transaction price and estimates should be made for the variable consideration component of the transaction price, as well as assessing whether an estimate of variable consideration is constrained. For certain of the Company’s contracts, variable consideration can arise from modifications to the scope of services resulting from unapproved change orders or customer claims. Variable consideration is included in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. The Company estimates of variable consideration and determination of whether to include estimated amounts in the transaction price are based largely on assessments of legal enforceability, the Company’s performance, and all information (historical, current and forecasted) that is reasonably available to the Company.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Due to the nature of the work required to be performed on many of the Company’s performance obligations, the estimation of total revenue and cost at completion is complex, subject to many variables and requires significant judgment. As a significant change in one or more of these estimates could affect the profitability of the Company’s contracts, the Company reviews and updates the Company’s contract-related estimates regularly through a company-wide disciplined project review process in which management reviews the progress and execution of the Company’s performance obligations and the estimate at completion (“EAC”). As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule and the related changes in estimates of revenues and costs. Management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the cost and availability of materials, the performance of subcontractors, and the availability and timing of funding from the customer, among other variables.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company recognizes adjustments in estimated profit on contracts under the cumulative catch-up method. Under this method, the impact of the adjustment on profit recorded to date is recognized in the period the adjustment is identified. Revenue and profit in future periods of contract performance is recognized using the adjusted estimate. If at any time the estimate of contract profitability indicates an anticipated loss on the contract, the Company recognizes the full amount of estimated loss in the period it is identified.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new rights or obligations or changes the existing enforceable rights or obligations. Most of the Company’s contract modifications are for goods or services that are not distinct from existing contracts due to the significant integration provided in the context of the contract and are accounted for as if they were part of the original contract. The effect of a contract modification that is not distinct from the existing contract on the transaction price and the Company’s measure of progress for the performance obligation to which it relates is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">For contract modifications that result in the promise to deliver goods or services that are distinct from the existing contract and the increase in price of the contract is for the same amount as the standalone selling price of the additional goods or services included in the modification, the Company accounts for such contract modifications as a separate contract.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company includes claims to vendors, subcontractors and others as a receivable and a reduction in recognized costs when enforceability of the claim is established by the contract and the amounts are reasonably estimable and probable of being recovered. The amounts are recorded up to the extent of the lesser of the amounts management expects to recover or to costs incurred.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Billing practices are governed by the contract terms of each project based upon costs incurred, achievement of milestones or pre-agreed schedules. Billings do not necessarily correlate with revenue recognized using the percentage-of-completion method of revenue recognition.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Direct costs of contract revenue consist primarily of that portion of technical and nontechnical salaries and wages that has been incurred in connection with revenue producing projects. Direct costs of contract revenue also include production expenses, subcontractor services and other expenses that are incurred in connection with revenue producing projects.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Direct costs of contract revenue exclude that portion of technical and nontechnical salaries and wages related to marketing efforts, vacations, holidays and other time not spent directly generating revenue under existing contracts. Such costs are included in general and administrative expenses. Additionally, payroll taxes, bonuses and employee benefit costs for all Company personnel are included in general and administrative expenses in the accompanying consolidated statements of comprehensive income since no allocation of these costs is made to direct costs of contract revenue. No allocation of facilities costs is made to direct costs of contract revenue. Other companies may classify as direct costs of contract revenue some of the costs that the Company classifies as general and administrative costs. The Company expenses direct costs of contract revenue when incurred.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Included in revenue and costs are all reimbursable costs for which the Company has the risk or on which the fee was based at the time of bid or negotiation. No revenue or cost is recorded for costs in which the Company acts solely in the capacity of an agent and has no risks associated with such costs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Accounts receivable are carried at original invoice amount less an estimate made for doubtful accounts based upon a review of all outstanding amounts on a quarterly basis. Management determines allowances for doubtful accounts through specific identification of amounts considered to be uncollectible and potential write-offs, plus a non-specific allowance for other amounts for which some potential loss has been determined to be probable based on current and past experience. The Company’s historical credit losses have been minimal with governmental entities and large public utilities, but disputes may arise related to these receivable amounts. Accounts receivable are written off when deemed uncollectible. Recoveries of accounts receivable previously written off are recorded when received.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Retainage, included in contract assets, represents amounts withheld from billings to the Company’s clients pursuant to provisions in the contracts and may not be paid to the Company until specific tasks are completed or the project is completed and, in some instances, for even longer periods. As of September 30, 2022 and December 31, 2021, contract assets included retainage of approximately $7.7 million and $4.5 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company enters into contracts with its clients that contain various types of pricing provisions, including fixed price, time-and-materials, and unit-based provisions. The Company recognizes revenues in accordance with ASU 2014-09, Revenue from Contracts with Customer, codified as ASC Topic 606 and the related amendments (collectively “ASC 606”). As such, the Company identifies a contract with a customer, identifies the performance obligations in the contract, determines the transaction price, allocates the transaction price to each performance obligation in the contract and recognizes revenues when (or as) the Company satisfies a performance obligation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The following table reflects the Company’s two reportable segments and the types of contracts that each most commonly enters into for revenue generating activities.</p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"/></div></td><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"/></div></td><td style="vertical-align:bottom;white-space:nowrap;width:33.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"/></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue Recognition Method</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;background:#cceeff;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Energy</p></td><td style="vertical-align:middle;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td><td style="vertical-align:middle;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;background:#cceeff;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Software license</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Fixed price</p></td><td style="vertical-align:middle;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Percentage-of-completion</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:33.34%;background:#cceeff;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:33.34%;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Engineering and Consulting</p></td><td style="vertical-align:middle;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td><td style="vertical-align:middle;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Fixed price</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Percentage-of-completion</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Revenue on the vast majority of the Company’s contracts is recognized over time because of the continuous transfer of control to the customer. Revenue on fixed price contracts is recognized on the percentage-of-completion method based generally on the ratio of direct costs incurred-to-date to estimated total direct costs at completion. The Company uses the percentage-of-completion method to better match the level of work performed at a certain point in time in relation to the effort that will be required to complete a project. In addition, the percentage-of-completion method is a common method of revenue recognition in the Company’s industry.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:10pt 0pt 12pt 0pt;">Many of the Company’s fixed price contracts involve a high degree of subcontracted fixed price effort and are relatively short in duration, thereby lowering the risks of not properly estimating the percent complete. Revenue on time-and-materials and unit-based contracts is recognized as the work is performed in accordance with the specific rates and terms of the contract. The Company recognizes revenues for time-and-materials contracts based upon the actual hours incurred during a reporting period at contractually agreed upon rates per hour and also includes in revenue all reimbursable costs incurred during a reporting period. Certain of the Company’s time-and-materials contracts are subject to maximum contract values and, accordingly, when revenue is expected to exceed the maximum contract value, these contracts are generally recognized under the percentage-of-completion method, consistent with fixed price contracts. For unit-based contracts, the Company recognizes the contract price of units of a basic production product as revenue when the production product is delivered during a period. Revenue for amounts that have been billed but not earned is deferred, and such deferred revenue is referred to as contract liabilities in the accompanying condensed consolidated balance sheets. The Company also derives revenue from software licenses and professional services and maintenance fees. In accordance with ASC 606, the Company performs an assessment of each contract to identify the performance obligations, determine the overall transaction price for the contract, allocate the transaction price to the performance obligations, and recognize the revenue when the performance obligations are satisfied. The Company utilizes the residual approach by which it estimates the standalone selling price by reference to the total transaction price less the sum of the observable standalone selling prices of other goods or services promised in the contract. The software license revenue is typically recognized at a point in time when control is transferred to the client, which is defined as the point in time when the client can use and benefit from the license. The software license is delivered before related services are provided and is functional without services, updates, or technical support. Related professional services include training and support services in which the standalone selling price is determined based on an input measure of hours incurred to total estimated hours and is recognized over time, usually which is the life of the contract.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">To determine the proper revenue recognition method for contracts, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined contract should be accounted for as one performance obligation. With respect to the Company’s contracts, it is rare that multiple contracts should be combined into a single performance obligation. This evaluation requires significant judgment and the decision to combine a group of contracts or separate a single contract into multiple performance obligations could change the amount of revenue and profit recorded in a given period. Contracts are considered to have a single performance obligation if the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts, which is mainly because the Company provides a significant service of integrating a complex set of tasks and components into a single project or capability.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="white-space:pre-wrap;">The Company may enter into contracts that include separate phases or elements. If each phase or element is negotiated separately based on the technical resources required and/or the supply and demand for the services being provided, the Company evaluates if the contracts should be segmented. If certain criteria are met, the contracts would be segmented which could result in revenues being assigned to the different elements or phases with different rates of profitability based on the relative value of each element or phase to the estimated total contract revenue. Segmented contracts may comprise up to approximately </span>2.0% to 3.0% of the Company’s consolidated contract revenue.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Contracts that cover multiple phases or elements of the project or service lifecycle (development, construction and maintenance and support) may be considered to have multiple performance obligations even when they are part of a single contract. For contracts with multiple performance obligations, the Company allocates the transaction price to each performance obligation using the best estimate of the standalone selling price of each distinct good or service in the contract. For the periods presented, the value of the separate performance obligations under contracts with multiple performance obligations (generally measurement and verification tasks under certain energy performance contracts) were not material. In cases where the Company does not provide the distinct good or service on a standalone basis, the primary method used to estimate standalone selling price is the expected cost plus a margin approach, under which the Company forecasts the Company’s expected costs of satisfying a performance obligation and then adds an appropriate margin for the distinct good or service.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company provides quality of workmanship warranties to customers that are included in the sale and are not priced or sold separately or do not provide customers with a service in addition to assurance of compliance with agreed-upon specifications and industry standards. The Company does not consider these types of warranties to be separate performance obligations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">In some cases, the Company has a master service or blanket agreement with a customer under which each task order releases the Company to perform specific portions of the overall scope in the service contract. Each task order is typically accounted for as a separate contract because the task order establishes the enforceable rights and obligations, and payment terms.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Under ASC 606, variable consideration should be considered when determining the transaction price and estimates should be made for the variable consideration component of the transaction price, as well as assessing whether an estimate of variable consideration is constrained. For certain of the Company’s contracts, variable consideration can arise from modifications to the scope of services resulting from unapproved change orders or customer claims. Variable consideration is included in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. The Company estimates of variable consideration and determination of whether to include estimated amounts in the transaction price are based largely on assessments of legal enforceability, the Company’s performance, and all information (historical, current and forecasted) that is reasonably available to the Company.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Due to the nature of the work required to be performed on many of the Company’s performance obligations, the estimation of total revenue and cost at completion is complex, subject to many variables and requires significant judgment. As a significant change in one or more of these estimates could affect the profitability of the Company’s contracts, the Company reviews and updates the Company’s contract-related estimates regularly through a company-wide disciplined project review process in which management reviews the progress and execution of the Company’s performance obligations and the estimate at completion (“EAC”). As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule and the related changes in estimates of revenues and costs. Management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the cost and availability of materials, the performance of subcontractors, and the availability and timing of funding from the customer, among other variables.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company recognizes adjustments in estimated profit on contracts under the cumulative catch-up method. Under this method, the impact of the adjustment on profit recorded to date is recognized in the period the adjustment is identified. Revenue and profit in future periods of contract performance is recognized using the adjusted estimate. If at any time the estimate of contract profitability indicates an anticipated loss on the contract, the Company recognizes the full amount of estimated loss in the period it is identified.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Contracts are often modified to account for changes in contract specifications and requirements. The Company considers contract modifications to exist when the modification either creates new rights or obligations or changes the existing enforceable rights or obligations. Most of the Company’s contract modifications are for goods or services that are not distinct from existing contracts due to the significant integration provided in the context of the contract and are accounted for as if they were part of the original contract. The effect of a contract modification that is not distinct from the existing contract on the transaction price and the Company’s measure of progress for the performance obligation to which it relates is recognized as an adjustment to revenue (either as an increase in or a reduction of revenue) on a cumulative catch-up basis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">For contract modifications that result in the promise to deliver goods or services that are distinct from the existing contract and the increase in price of the contract is for the same amount as the standalone selling price of the additional goods or services included in the modification, the Company accounts for such contract modifications as a separate contract.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company includes claims to vendors, subcontractors and others as a receivable and a reduction in recognized costs when enforceability of the claim is established by the contract and the amounts are reasonably estimable and probable of being recovered. The amounts are recorded up to the extent of the lesser of the amounts management expects to recover or to costs incurred.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Billing practices are governed by the contract terms of each project based upon costs incurred, achievement of milestones or pre-agreed schedules. Billings do not necessarily correlate with revenue recognized using the percentage-of-completion method of revenue recognition.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Direct costs of contract revenue consist primarily of that portion of technical and nontechnical salaries and wages that has been incurred in connection with revenue producing projects. Direct costs of contract revenue also include production expenses, subcontractor services and other expenses that are incurred in connection with revenue producing projects.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Direct costs of contract revenue exclude that portion of technical and nontechnical salaries and wages related to marketing efforts, vacations, holidays and other time not spent directly generating revenue under existing contracts. Such costs are included in general and administrative expenses. Additionally, payroll taxes, bonuses and employee benefit costs for all Company personnel are included in general and administrative expenses in the accompanying consolidated statements of comprehensive income since no allocation of these costs is made to direct costs of contract revenue. No allocation of facilities costs is made to direct costs of contract revenue. Other companies may classify as direct costs of contract revenue some of the costs that the Company classifies as general and administrative costs. The Company expenses direct costs of contract revenue when incurred.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Included in revenue and costs are all reimbursable costs for which the Company has the risk or on which the fee was based at the time of bid or negotiation. No revenue or cost is recorded for costs in which the Company acts solely in the capacity of an agent and has no risks associated with such costs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Accounts receivable are carried at original invoice amount less an estimate made for doubtful accounts based upon a review of all outstanding amounts on a quarterly basis. Management determines allowances for doubtful accounts through specific identification of amounts considered to be uncollectible and potential write-offs, plus a non-specific allowance for other amounts for which some potential loss has been determined to be probable based on current and past experience. The Company’s historical credit losses have been minimal with governmental entities and large public utilities, but disputes may arise related to these receivable amounts. Accounts receivable are written off when deemed uncollectible. Recoveries of accounts receivable previously written off are recorded when received.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Retainage, included in contract assets, represents amounts withheld from billings to the Company’s clients pursuant to provisions in the contracts and may not be paid to the Company until specific tasks are completed or the project is completed and, in some instances, for even longer periods. As of September 30, 2022 and December 31, 2021, contract assets included retainage of approximately $7.7 million and $4.5 million, respectively.</p> 2 <p style="font-family:'Times New Roman','Times','serif';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;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"/></div></td><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"/></div></td><td style="vertical-align:bottom;white-space:nowrap;width:33.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"/></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Segment</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Revenue Recognition Method</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;background:#cceeff;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Energy</p></td><td style="vertical-align:middle;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td><td style="vertical-align:middle;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;background:#cceeff;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Software license</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Fixed price</p></td><td style="vertical-align:middle;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Percentage-of-completion</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:33.34%;background:#cceeff;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Time-and-materials</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:33.34%;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Engineering and Consulting</p></td><td style="vertical-align:middle;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td><td style="vertical-align:middle;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Unit-based</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:33.34%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Fixed price</p></td><td style="vertical-align:middle;width:33.31%;background:#cceeff;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">Percentage-of-completion</p></td></tr></table> 0.020 0.030 0 0 0 7700000 4500000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;">4. SUPPLEMENTAL FINANCIAL STATEMENT DATA </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt 0pt 8pt 0pt;"><i style="font-style:italic;">Accounts Receivable</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">From time to time, in connection with factoring agreements, the Company sells trade accounts receivable without recourse to third party purchasers in exchange for cash. During the nine months ended September 30, 2022, the Company did not sell any trade accounts receivable. During the nine months ended October 1, 2021, the Company sold trade accounts receivable and received cash proceeds of $8.0 million. The discounts on the trade accounts receivable sold were $0.8 million and were recorded within “Other, net” in other income (expense) in the condensed consolidated financial statements. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Equipment and Leasehold Improvements</i></p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:44.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Furniture and fixtures</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,065</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,070</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Computer hardware and software</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 33,085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 26,425</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,083</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,011</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Equipment under finance leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,204</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,286</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Automobiles, trucks, and field equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,102</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,099</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Subtotal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 48,539</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 39,891</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accumulated depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (27,392)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (23,134)</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Equipment and leasehold improvements, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 21,147</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 16,757</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:8pt 0pt 12pt 0pt;">Included in accumulated depreciation and amortization is $0.8 million and $0.6 million of amortization expense related to equipment held under finance leases for the nine months ended September 30, 2022 and for fiscal year 2021, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Accrued Liabilities</i></p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:18.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:21.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:middle;white-space:nowrap;width:44.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued subcontractor costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 34,624</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 19,727</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,013</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,750</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Compensation and payroll taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,676</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,244</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued bonuses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,606</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,767</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Employee withholdings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,396</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,665</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued workers’ compensation insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 681</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 527</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 50,996</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 35,680</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Goodwill</i></p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Additional</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Additions / </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></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','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Purchase Cost</b></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','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Adjustments</b></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','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:middle;white-space:nowrap;width:49.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Reporting Unit:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Energy</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 129,375</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 129,375</p></td></tr><tr><td style="vertical-align:bottom;width:48.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Engineering and Consulting</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 749</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 749</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 130,124</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 130,124</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="font-size:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/>The Company tests for impairment, at a minimum, on an annual basis or earlier when certain events or changes in circumstances indicate that goodwill may more likely than not be impaired. During the quarter ended September 30, 2022, although the Company experienced declines in the market price of its stock, such decreases did not result in the Company’s market capitalization decreasing below book value. Subsequent to the end of the quarter, the Company’s market capitalization based upon its stock price has fluctuated below book value. The fair value of the Company using a market capitalization approach based on the Company’s share price would also include a control premium not reflected in the current share price based on recent transactions that have occurred in the Company’s industry. This indicative fair value exceeded the Company’s book value; therefore, the Company does not believe it is more likely than not that goodwill was impaired as of September 30, 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/>If there are further decreases in the Company’s stock price for a sustained period or other unfavorable factors, the Company may be required to perform a goodwill impairment assessment, which may result in a recognition of goodwill impairment that could be material to the consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Intangible Assets</i></p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.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','Times','serif';font-size: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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:9.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size: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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:0.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:13.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:13.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Period</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:middle;white-space:nowrap;width:49.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:13.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in years)</i></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finite:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:10.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:9.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:0.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Backlog</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,872</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,222</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:13.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">1.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Tradename</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 10,492</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 8,997</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2.5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">-</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> 6.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,413</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">-</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> 5.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Developed technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,810</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 11,141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 8,950</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:13.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">8.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 58,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 24,127</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 58,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 19,939</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">-</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> 8.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total finite intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 55,052</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 98,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 46,521</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">In-process research and technology <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 310</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 55,052</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 46,521</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:18pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:7.5pt;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">In-process research and technology will not be amortized until put into use.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt;">During the nine months ended September 30, 2022, the Company reclassified $0.3 million of in-process research and technology to <span style="-sec-ix-hidden:Hidden_1BkdJUgoPkiVynrgQmSPGw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">developed technology</span></span> and commenced amortization over its estimated useful life. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 8000000.0 800000 <p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:44.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Furniture and fixtures</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,065</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,070</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Computer hardware and software</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 33,085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 26,425</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,083</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,011</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Equipment under finance leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,204</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,286</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Automobiles, trucks, and field equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,102</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,099</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Subtotal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 48,539</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 39,891</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accumulated depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (27,392)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (23,134)</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 18pt;">Equipment and leasehold improvements, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 21,147</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 16,757</p></td></tr></table> 4065000 4070000 33085000 26425000 3083000 3011000 5204000 3286000 3102000 3099000 48539000 39891000 27392000 23134000 21147000 16757000 800000 600000 <p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:18.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:21.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:21.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:middle;white-space:nowrap;width:44.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued subcontractor costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 34,624</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 19,727</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,013</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,750</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Compensation and payroll taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,676</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,244</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued bonuses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,606</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,767</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Employee withholdings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,396</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,665</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued workers’ compensation insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 681</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 527</p></td></tr><tr><td style="vertical-align:bottom;width:52.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.31%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 50,996</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.16%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 35,680</p></td></tr></table> 34624000 19727000 5013000 2750000 3676000 2244000 3606000 7767000 3396000 2665000 681000 527000 50996000 35680000 <p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Additional</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Additions / </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></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','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Purchase Cost</b></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','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Adjustments</b></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','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:middle;white-space:nowrap;width:49.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Reporting Unit:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Energy</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 129,375</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 129,375</p></td></tr><tr><td style="vertical-align:bottom;width:48.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Engineering and Consulting</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 749</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 749</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 130,124</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 130,124</p></td></tr></table> 129375000 129375000 749000 749000 130124000 130124000 <p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:33.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','Times','serif';font-size: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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:9.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size: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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:0.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Accumulated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:13.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:13.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Period</b></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:middle;white-space:nowrap;width:49.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:13.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in years)</i></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finite:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:10.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:9.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:0.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Backlog</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,872</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 7,222</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:13.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">1.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Tradename</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 10,492</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 8,997</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2.5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">-</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> 6.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,413</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">-</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> 5.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Developed technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,810</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 11,141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 8,950</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:13.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">8.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 58,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 24,127</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 58,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 19,939</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">-</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> 8.0</p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total finite intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 55,052</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 98,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 46,521</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">In-process research and technology <sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 310</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:33.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.58%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 55,052</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 46,521</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:18pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:7.5pt;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">In-process research and technology will not be amortized until put into use.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 7944000 7872000 7944000 7222000 P1Y 15911000 10492000 15911000 8997000 P2Y6M P6Y 1420000 1420000 1420000 1413000 P4Y P5Y 15810000 11141000 15500000 8950000 P8Y 58149000 24127000 58149000 19939000 P5Y P8Y 99234000 55052000 98924000 46521000 310000 99234000 55052000 99234000 46521000 -300000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">5. DERIVATIVE FINANCIAL INSTRUMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">From time to time, the Company uses certain interest rate derivative contracts to hedge interest rate exposures on its variable rate debt. The Company’s hedging program is not designated for trading or speculative purposes.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company recognizes derivative instruments as either assets or liabilities on the accompanying consolidated balance sheets at fair value. The Company records changes in the fair value (i.e., gains or losses) of the derivatives that have been designated as cash flow hedges in its consolidated balance sheets as accumulated other comprehensive income (loss) and in its condensed consolidated statements of comprehensive (loss) income as a loss or gain on cash flow hedge valuation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">On January 31, 2019, the Company entered into an interest rate swap agreement that the Company designated as cash flow hedge to fix the variable interest rate on a portion of the Company’s Term A Loan (as defined below in Note 6. “<i style="font-style:italic;">Debt Obligations</i>”). The interest rate swap agreement had total notional amount of $35.0 million and had a fixed annual interest rate of 2.47%. The interest rate swap <span style="-sec-ix-hidden:Hidden_JUxmvBZACk2QkLsHOB1-AA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">expired</span></span> on January 31, 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">At its expiration, changes in the fair value of the Company’s interest rate swap agreement were immaterial to the Company’s condensed consolidated financial statements and were included in accrued liabilities in the condensed consolidated balance sheet. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">At its expiration, the effective portion of the Company’s interest rate swap agreement designated as a cash flow hedge was immaterial to the Company’s condensed consolidated financial statements, and all amounts were reclassified from accumulated other comprehensive income to interest expense. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">As of September 30, 2022, the Company had no derivative financial instruments in place.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 35000000.0 0.0247 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">6. DEBT OBLIGATIONS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Debt obligations, excluding obligations under finance leases (see Note 7, <i style="font-style:italic;">Leases,</i> below), consisted of the following:</p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><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','Times','serif';font-size: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.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="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','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:26.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding borrowings on Term A Loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 67,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 75,000</p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding borrowings on Revolving Credit Facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding borrowings on Delayed Draw Term Loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 41,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 24,000</p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other debt agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 583</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,161</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Total debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 109,833</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 101,161</p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Issuance costs and debt discounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (411)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (587)</p></td></tr><tr><td style="vertical-align:bottom;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 6pt;"><span style="font-size:9.5pt;">Subtotal</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 109,422</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 100,574</p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-size:9.5pt;">Less current portion of long-term debt</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,510</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,036</p></td></tr><tr><td style="vertical-align:bottom;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 6pt;"><span style="font-size:9.5pt;">Long-term debt portion</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 93,912</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 85,538</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Credit Facilities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">On June 26, 2019, the Company and certain of its subsidiaries entered into an Amended and Restated Credit Agreement (as amended by the First Amendment, dated as of August 15, 2019, the Second Amendment, dated as of November 6, 2019, the Third Amendment, dated as of May 6, 2020, the Fourth Amendment, dated April 30, 2021, and the Fifth Amendment, dated March 8, 2022, the “Credit Agreement”) with a syndicate of financial institutions as lenders and BMO Harris Bank, N.A. (“BMO”), as administrative agent. The Credit Agreement provides for (i) a $100.0 million secured term loan (the “Term A Loan”), (ii) up to $50.0 million in delayed draw secured term loans (the “Delayed Draw Term Loan”), and (iii) a $50.0 million secured revolving credit facility (the “Revolving Credit Facility” and, collectively with the Term A Loan and the Delayed Draw Term Loan, the “Credit Facilities”), each maturing on June 26, 2024. The Company’s obligations under the Credit Agreement are guaranteed by its present and future domestic subsidiaries, with limited exceptions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Prior to the Fourth Amendment to the Credit Agreement, dated as of April 30, 2021 (the “Fourth Amendment”), the Credit Agreement required the Company to comply with certain financial covenants, including requiring that the Company maintain a (i) total leverage ratio (the “Leverage Ratio”), defined as the ratio of total funded debt to Adjusted EBITDA (as defined in the Credit Agreement), of 6.00 to 1.00 through June 26, 2020, 7.75 to 1.00 through September 25, 2020, 7.50 to 1.00 through January 1, 2021, 6.25 to 1.00 through April 2, 2021, 4.00 to 1.00 through July 2, 2021, and 3.25 to 1.00 through October 1, 2021 and thereafter and (ii) fixed charge coverage ratio (“FCCR Ratio”), defined as the ratio of Adjusted EBITDA less Unfinanced Capital Expenditures (as defined in the Credit Agreement) to Fixed Charges (as defined in the Credit Agreement), of not less than 1.20 to 1.00, in each case tested quarterly, except during the period from May 6, 2020 until July 2, 2021 (the “Initial Covenant Relief Period”), when the maximum Leverage Ratio was increased and the covenant to maintain a minimum FCCR Ratio was replaced with a covenant to maintain a minimum Adjusted EBITDA (as defined in the Third Amendment). In addition, during the Initial Covenant Relief Period, no delayed draw term loans could be borrowed under the Credit Facilities and the Company was prohibited from engaging in share repurchases or making any Permitted Acquisitions (as defined in the Credit Agreement). Additionally, during the Initial Covenant Relief Period, the aggregate amount of all capital expenditures made by the Company could not exceed $7.0 million, and the Company was prohibited from making any earn-out payments if, after giving effect to such earn-out payment, the Company’s liquidity would be less than $5.0 million or the aggregate amount of all earn-out payments made by the Company during the Initial Covenant Relief Period would exceed $7.0 million.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">Pursuant to the Fourth Amendment, the Initial Covenant Relief Period was extended from July 2, 2021 to and including the earlier of (i) April 1, 2022 and (ii) the last day of the fiscal quarter in which the Company delivers an irrevocable election to terminate the covenant relief granted by the Fourth Amendment (the “Second Covenant Relief Period,” and together with the Initial Covenant Relief Period, the “Amended Covenant Relief Period”). The Fourth Amendment also (A) increased the maximum Leverage Ratio the Company was permitted to maintain to 4.50 to 1.00 through June 30, 2021, 5.25 to 1.00 through September 30, 2021, 4.50 to 1.00 through December 31, 2021, 4.25 to 1.00 through March 31, 2022, and 3.25 to 1.00 through June 30, 2022 and thereafter, (B) established the minimum Adjusted EBITDA thresholds (as defined in the Third Amendment) for the remainder of the Amended Covenant Relief Period, (C) removed the previous prohibition during the Initial Covenant Relief Period on the Company’s ability to make delayed draw term loan borrowings, (D) removed the previous prohibition during the Initial Covenant Relief Period on the Company’s ability to make Permitted Acquisitions (as defined in the Credit Agreement) and to purchase, redeem or otherwise acquire the Company’s common stock, in each case, subject to certain conditions, and (E) increased the maximum amount of earn-out payments the Company was permitted to make during the Amended Covenant Relief Period from $7.0 million to $17.0 million, provided that the Company’s liquidity would not be less than $10.0 million after giving effect to such earn-out payment. Additionally, during the remainder of the Amended Covenant Relief Period, the aggregate amount of all capital expenditures made by the Company may not exceed $15.0 million. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">In accordance with the Fourth Amendment, borrowings under the Credit Agreement bore interest at all times other than during the Initial Covenant Relief Period, at either a Base Rate or London Inter-Bank Offered Rate (“LIBOR”), each as defined in the Credit Agreement, at the Company’s option, and in each case plus an applicable margin, which applicable margin ranged from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to LIBOR borrowings, depending on the Leverage Ratio; provided, that LIBOR could not be less than 0.00%. The Company also agreed to pay a commitment fee for the unused portion of the Revolving Credit Facility and the delayed draft term loan facility, which ranged from 0.15% to 0.40% per annum depending on the Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the Revolving Credit Facility, which ranged from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Leverage Ratio.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The Credit Agreement includes customary events of default and also contains other customary restrictive covenants including (i) restrictions on the incurrence of additional indebtedness and additional liens on property, (ii) restrictions on permitted acquisitions and other investments and (iii) limitations on asset sales, mergers and acquisitions. Further, the Credit Agreement limits the Company’s payment of future dividends and distributions and share repurchases by the Company. Subject to certain exceptions, borrowings under the Credit Agreement are also subject to mandatory prepayment from (a) any issuances of debt or equity securities, (b) any sale or disposition of assets, (c) insurance and condemnation proceeds (d) representation and warranty insurance proceeds related to insurance policies issued in connection with acquisitions and (e) excess cash flow.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:18pt;margin:0pt;"><i style="font-style:italic;">Fifth Amendment to the Credit Agreement </i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:36pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;background:#ffffff;margin:0pt;">On March 8, 2022, the Company entered into the Fifth Amendment to the Credit Agreement (the “Fifth Amendment”). The Fifth Amendment extended the Amended Covenant Relief Period from March 31, 2022 to and including the earlier of (i) December 30, 2022 and (ii) the last day of the fiscal quarter in which the Company delivers an irrevocable election to terminate the covenant relief granted by the Fifth Amendment (the “Third Covenant Relief Period,” and together with the Amended Covenant Relief Period, the “Extended Covenant Relief Period”). </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:18pt;background:#ffffff;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;background:#ffffff;margin:0pt;">The Fifth Amendment also (A) amended the minimum Adjusted EBITDA (as defined in the Fifth Amendment) thresholds for the remainder of the Extended Covenant Relief Period, (B) increased the maximum Total Leverage Ratio (as defined in the Credit Agreement) the Company is permitted to maintain through the fiscal quarter ending on December 31, 2022, (C) funded to the Company, on the date of closing, the remaining $20.0 million in available funds from the Delayed Draw Term Loan, and (D) amended the pricing structure of borrowings under the Credit Agreement </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;">from utilizing as a reference rate the LIBOR to utilizing the Secured Overnight Financing Rate (“SOFR”). Additionally, during the remainder of the Covenant Relief Period, the aggregate amount of all capital expenditures made by the Company may not exceed $20.0 million.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;"> </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;background:#ffffff;margin:0pt;">Pursuant to the Fifth Amendment, during the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.50% with respect to Base Rate borrowings and 1.125% to 2.50% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.45% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.875% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio. </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:18pt;background:#ffffff;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;background:#ffffff;margin:0pt;">After the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the delayed draft term loan facility under the Credit Agreement, which will range from 0.15% to 0.40% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio.</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:18pt;margin:0pt;"><i style="font-style:italic;">Sixth Amendment to the Credit Agreement </i></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;background:#ffffff;margin:0pt;">On August 2, 2022, the Company entered into the Sixth Amendment to the Credit Agreement (the “Sixth Amendment”). The Sixth Amendment increased the purchase money indebtedness and Capitalized Lease Obligations (as defined in the Credit Agreement) permissible limit from $1.5 million to $4.0 million, with no other changes to the Credit Agreement.</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-family:'TimesNewRomanPS-BoldMT';">As of September 30, 2022, the Company was in compliance with all covenants contained in the Credit Agreement, as amended, other than the minimum Adjusted EBITDA thresholds for the test period ended September 30, 2022. Such non-compliance with the minimum Adjusted EBITDA thresholds for the test period ended September 30, 2022 was subsequently waived by the lenders under the Credit Agreement pursuant to the Seventh Amendment (defined and described in Note 13. “</span><i style="font-family:'TimesNewRomanPS-BoldMT';font-style:italic;">Subsequent Events</i><span style="font-family:'TimesNewRomanPS-BoldMT';">” below).</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;background:#ffffff;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Other Debt Agreements</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="color:#212529;">The Company’s other debt agreements are related to financed insurance premiums, a financed software agreement, and a utility customer agreement and are immaterial to the Company’s Condensed Consolidated Financial Statements.</span> </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';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;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><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','Times','serif';font-size: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.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="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','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:26.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding borrowings on Term A Loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 67,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 75,000</p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding borrowings on Revolving Credit Facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Outstanding borrowings on Delayed Draw Term Loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 41,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 24,000</p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other debt agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 583</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,161</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Total debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 109,833</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 101,161</p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Issuance costs and debt discounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (411)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (587)</p></td></tr><tr><td style="vertical-align:bottom;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 6pt;"><span style="font-size:9.5pt;">Subtotal</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 109,422</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 100,574</p></td></tr><tr><td style="vertical-align:bottom;width:72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt;"><span style="font-size:9.5pt;">Less current portion of long-term debt</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,510</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,036</p></td></tr><tr><td style="vertical-align:bottom;width:72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;margin:0pt 0pt 0pt 6pt;"><span style="font-size:9.5pt;">Long-term debt portion</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 93,912</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.75%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 85,538</p></td></tr></table> 67500000 75000000 41750000 24000000 583000 2161000 109833000 101161000 411000 587000 109422000 100574000 15510000 15036000 93912000 85538000 100000000.0 50000000.0 50000000.0 6.00 7.75 7.50 6.25 4.00 3.25 1.20 7000000.0 5000000.0 7000000.0 4.50 5.25 4.50 4.25 3.25 7000000.0 17000000.0 10000000.0 15000000.0 0.00125 0.0125 0.01125 0.0225 0.0000 0.0015 0.0040 0.0084 0.01688 20000000.0 20000000.0 0.0010 0.0015 0.00125 0.0150 0.01125 0.0250 0.0000 0.0015 0.0045 0.0084 0.01875 0.0010 0.0015 0.00125 0.0125 0.01125 0.0225 0.0000 0.0015 0.0040 0.0084 0.01688 1500000 4000000.0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">7. LEASES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company leases certain office facilities under long-term, non-cancellable operating leases that expire at various dates through the year 2027. In addition, the Company is obligated under finance leases for certain furniture and office equipment that expire at various dates through the year 2027.</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;">From time to time, the Company enters into non-cancelable leases for some of its facility and equipment needs. These leases allow the Company to conserve cash by paying a monthly lease rental fee for the use of facilities and equipment rather than purchasing them. The Company’s leases have terms ranging from </span><span style="-sec-ix-hidden:Hidden_9-eKF-ffAUCglecPKAr1wA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">one</span></span><span style="font-size:10pt;"> to </span><span style="font-size:10pt;">eight years</span><span style="font-size:10pt;">, some of which may include options to </span><span style="font-size:10pt;">extend</span><span style="font-size:10pt;"> the leases for up to </span><span style="font-size:10pt;">five years</span><span style="font-size:10pt;">, and some of which may include options to </span><span style="font-size:10pt;">terminate</span><span style="font-size:10pt;"> the leases within </span><span style="font-size:10pt;">one year</span><span style="font-size:10pt;">. Currently, all of the Company’s leases contain fixed payment terms. The Company may decide to cancel or terminate a lease before the end of its term, in which case the Company is typically liable to the lessor for the remaining lease payments under the term of the lease. Additionally, all of the Company’s month-to-month leases are cancelable by the Company or the lessor, at any time, and are not included in the Company’s right-of-use asset or lease liability. As of September 30, 2022, the Company had </span><span style="font-size:10pt;">no</span><span style="font-size:10pt;"> leases with residual value guarantees. Typically, the Company has purchase options on the equipment underlying its long-term leases. The Company may exercise some of these purchase options when the need for equipment is on-going and the purchase option price is attractive. Nonperformance-related default covenants, cross-default provisions, subjective default provisions and material adverse change clauses contained in material lease agreements, if any, are also evaluated to determine whether those clauses affect lease classification in accordance with “ASC” Topic 842-10-25. Leases are accounted for as operating or financing leases, depending on the terms of the lease.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt;"><i style="font-style:italic;">Financing Leases</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The Company leases certain equipment under financing leases. The economic substance of the leases is a financing transaction for acquisition of equipment and leasehold improvements. Accordingly, the right-of-use assets for these leases are included in the balance sheets in equipment and leasehold improvements, net of accumulated depreciation, with a corresponding amount recorded in current portion of financing lease obligations or noncurrent portion of financing lease obligations, as appropriate. The financing lease assets are amortized over the life of the lease or, if shorter, the life of the leased asset, on a straight-line basis and included in depreciation expense. The interest associated with financing lease obligations is included in interest expense.</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"> </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Right-of-use assets</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">Operating leases are included in right-of-use assets, and current portion of lease liability and noncurrent portion of lease liability, as appropriate. Right-of-use assets and lease liabilities are recognized based on the present value of the future minimum lease payments over the lease term at commencement date. As most of the Company’s leases do not provide an implicit rate to calculate present value, the Company determines this rate by estimating the Company’s incremental borrowing rate at the lease commencement date. The right-of-use asset also includes any lease payments made and initial direct costs incurred at lease commencement and excludes lease incentives. The Company’s lease terms may include options to extend or terminate the lease when it is reasonably certain that it will exercise that option. Lease expense for minimum lease payments is recognized on a straight-line basis over the lease term.</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The following is a summary of the Company’s lease expense:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:37.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','Times','serif';font-size: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.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:30.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:30.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Operating lease cost</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,523</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,596</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,635</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,941</p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finance lease cost:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Amortization of assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">311</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 139</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 799</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 397</p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Interest on lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">22</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 9</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 51</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 22</p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total net lease cost</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,856</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,744</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,485</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,360</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The following is a summary of lease information presented on the Company’s consolidated balance sheet:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:17.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:17.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Operating leases:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,715</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,177</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Lease liability</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,889</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Lease liability, less current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 8,747</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 10,768</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 13,636</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 16,343</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finance leases (included in equipment and leasehold improvements, net):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Equipment and leasehold improvements, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,204</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,286</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Accumulated depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (2,524)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1,947)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"><span style="-sec-ix-hidden:Hidden_dpNdcjCIMkSj0jZC9Z5BdQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Total equipment and leasehold improvements, net</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,680</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,339</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Finance lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 970</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 539</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Finance lease obligations, less current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,657</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 778</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total finance lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,627</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,317</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted average remaining lease term (in years):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating Leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3.48</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3.79</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Finance Leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2.70</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2.62</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted average discount rate:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating Leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">4.16</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">4.28</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Finance Leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">3.08</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">2.78</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">Rent expense was $1.6 million and $4.9 million for the three and nine months ended September 30, 2022, respectively, as compared to $1.6 million and $5.2 million for the three and nine months ended October 1, 2021, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The following is a summary of other information and supplemental cash flow information related to finance and operating leases: </p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:58.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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','Times','serif';font-size: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','Times','serif';font-size: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.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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','Times','serif';font-size: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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="7" style="padding:0pt;"/></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cash paid for amounts included in the measurement of lease liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating cash flow from operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,879</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin: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','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,115</p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating cash flow from finance leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 51</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 22</p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Financing cash flow from finance leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 827</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;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','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 440</p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Right-of-use assets obtained in exchange for lease liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;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','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 326</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The following is a summary of the maturities of lease liabilities as of September 30, 2022:</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Operating</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Finance</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:25.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><i style="font-style:italic;">(in thousands)</i></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">Fiscal year:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">Remainder of 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 1,542</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 228</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 4,765</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 1,161</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 3,313</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 887</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,493</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 303</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,140</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 134</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2027 and thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 453</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 30</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 18pt;">Total lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 14,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,743</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">Less: Imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"> (1,070)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"> (116)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 18pt;">Total lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 13,636</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,627</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">Less: Current obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 4,889</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 970</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 18pt;">Noncurrent lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 8,747</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 1,657</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The imputed interest for finance lease obligations represents the interest component of finance leases that will be recognized as interest expense in future periods. The financing component for operating lease obligations represents the effect of discounting the operating lease payments to their present value.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="visibility:hidden;">​</span></p> P8Y true P5Y true P1Y 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:37.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','Times','serif';font-size: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.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:30.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:30.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Operating lease cost</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,523</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,596</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,635</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,941</p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finance lease cost:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Amortization of assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">311</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 139</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 799</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 397</p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Interest on lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">22</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 9</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 51</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 22</p></td></tr><tr><td style="vertical-align:bottom;width:37.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total net lease cost</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,856</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,744</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,485</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,360</p></td></tr></table> 1523000 1596000 4635000 4941000 311000 139000 799000 397000 22000 9000 51000 22000 1856000 1744000 5485000 5360000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:17.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:17.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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="vertical-align:bottom;white-space:nowrap;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Operating leases:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,715</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 15,177</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Lease liability</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,889</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Lease liability, less current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 8,747</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 10,768</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 13,636</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 16,343</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finance leases (included in equipment and leasehold improvements, net):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Equipment and leasehold improvements, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,204</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3,286</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Accumulated depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (2,524)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1,947)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;"><span style="-sec-ix-hidden:Hidden_dpNdcjCIMkSj0jZC9Z5BdQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Total equipment and leasehold improvements, net</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,680</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,339</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Finance lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 970</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 539</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Finance lease obligations, less current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,657</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 778</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 24pt;">Total finance lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2,627</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,317</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted average remaining lease term (in years):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating Leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3.48</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 3.79</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Finance Leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2.70</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 2.62</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted average discount rate:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating Leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">4.16</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">4.28</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:58.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Finance Leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">3.08</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;">2.78</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">%</p></td></tr></table> 12715000 15177000 4889000 5575000 8747000 10768000 13636000 16343000 5204000 3286000 2524000 1947000 2680000 1339000 970000 539000 1657000 778000 2627000 1317000 P3Y5M23D P3Y9M14D P2Y8M12D P2Y7M13D 0.0416 0.0428 0.0308 0.0278 1600000 4900000 1600000 5200000 <p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:58.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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','Times','serif';font-size: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','Times','serif';font-size: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.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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','Times','serif';font-size: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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="7" style="padding:0pt;"/></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cash paid for amounts included in the measurement of lease liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating cash flow from operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 4,879</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin: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','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 5,115</p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating cash flow from finance leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 51</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 22</p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Financing cash flow from finance leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 827</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;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','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 440</p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Right-of-use assets obtained in exchange for lease liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;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','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:58.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 1,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 326</p></td></tr></table> 4879000 5115000 51000 22000 827000 440000 1706000 326000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The following is a summary of the maturities of lease liabilities as of September 30, 2022:</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Operating</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Finance</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:25.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><i style="font-style:italic;">(in thousands)</i></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">Fiscal year:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">Remainder of 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 1,542</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 228</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 4,765</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 1,161</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 3,313</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 887</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,493</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 303</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,140</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 134</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2027 and thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 453</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 30</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 18pt;">Total lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 14,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,743</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">Less: Imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"> (1,070)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"> (116)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 18pt;">Total lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 13,636</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,627</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">Less: Current obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 4,889</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 970</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 18pt;">Noncurrent lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 8,747</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 1,657</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> <p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Operating</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Finance</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:middle;white-space:nowrap;width:25.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><i style="font-style:italic;">(in thousands)</i></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">Fiscal year:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">Remainder of 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 1,542</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 228</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 4,765</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 1,161</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 3,313</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 887</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,493</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 303</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,140</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 134</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 12pt;">2027 and thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 453</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 30</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 18pt;">Total lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 14,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,743</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">Less: Imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"> (1,070)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"> (116)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 18pt;">Total lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 13,636</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 2,627</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">Less: Current obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 4,889</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 970</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 18pt;">Noncurrent lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 8,747</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0.05pt 3.6pt 0.05pt 0pt;"> 1,657</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0.05pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr></table> 1542000 228000 4765000 1161000 3313000 887000 2493000 303000 2140000 134000 453000 30000 14706000 2743000 1070000 116000 13636000 2627000 4889000 970000 8747000 1657000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">8. COMMITMENTS AND VARIABLE INTEREST ENTITIES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-indent:-36pt;margin:0pt 0pt 12pt 18pt;"><i style="font-style:italic;">Employee Benefit Plans</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company has a qualified profit sharing plan pursuant to Code Section 401(a) and <span style="-sec-ix-hidden:Hidden_iN_eXsgptkWQoksk6oBsVA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">qualified</span></span> cash or deferred arrangement pursuant to Code Section 401(k) covering all employees. Company contributions are made solely at the discretion of the Company’s board of directors. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company’s defined contribution plan (the “Plan”) covers employees who have completed three months of service and who have attained 21 years of age. Employees may elect to contribute up to 50% of their compensation limited to the amount allowed by tax laws. The Company elects to make matching contributions equal to 50% of the participants’ contributions to the Plan, up to 6% of the individual participant’s compensation, and subject to a maximum of $3,000 per employee. Under the Plan, the Company’s matching contributions to employee accounts are discretionary.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">During the nine months ended September 30, 2022 and October 1, 2021, the Company made matching contributions of $2.0 million and $1.6 million, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt;"><i style="font-style:italic;">Variable Interest Entities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:12pt 0pt 12pt 0pt;">On March 4, 2016, the Company and the Company’s wholly-owned subsidiary, WES, acquired substantially all of the assets of Genesys and assumed certain specified liabilities of Genesys (collectively, the “Purchase”) pursuant to an Asset Purchase and Merger Agreement, dated as of February 26, 2016 (the “Agreement”), by and among Willdan Group, Inc., WES, WESGEN (as defined below), Genesys and Ronald W. Mineo (“Mineo”) and Robert J. Braun (“Braun” and, together with Mineo, the “Genesys Shareholders”). On March 5, 2016, pursuant to the terms of the Agreement, WESGEN, Inc., a non-affiliated corporation (“WESGEN”), merged (the “Merger” and, together with the Purchase, the “Acquisition”) with Genesys, with Genesys remaining as the surviving corporation. Genesys was acquired to strengthen the Company’s power engineering capability in the northeastern U.S., and also to increase client exposure and experience with universities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">Genesys continues to be a professional corporation organized under the laws of the State of New York, wholly-owned by one or more licensed engineers. Pursuant to New York law, the Company does not own capital stock of Genesys. The Company has entered into an agreement with the Shareholder of Genesys pursuant to which the Shareholder will be prohibited from selling, transferring or encumbering the Shareholder’s ownership interest in Genesys without the Company’s consent. Notwithstanding the Company’s rights regarding the transfer of Genesys’s stock, the Company does not have control over the professional decision making of Genesys’s engineering services. The Company has entered into an administrative services agreement with Genesys pursuant to which WES will provide Genesys with ongoing administrative, operational and other non-professional support services. Genesys pays WES a service fee, which consists of all of the costs incurred by WES to provide the administrative services to Genesys plus ten percent of such costs, as well as any other costs that relate to professional service supplies and personnel costs. As a result of the administrative services agreement, the Company absorbs the expected losses of Genesys through its deferral of Genesys’s service fees owed to WES. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="display:inline-block;text-indent:0pt;width:36pt;"/>The Company manages Genesys and has the power to direct the activities that most significantly impact Genesys’s performance, in addition to being obligated to absorb expected losses from Genesys. Accordingly, the Company is the primary beneficiary of Genesys and consolidates Genesys as a VIE. In addition, the Company concluded there is no noncontrolling interest related to the consolidation of Genesys because the Company determined that (i) the shareholder of Genesys does not have more than a nominal amount of equity investment at risk, (ii) WES absorbs the expected losses of Genesys through its deferral of Genesys’s service fees owed to WES and the Company has, since entering into the administrative services agreement, had to continuously defer service fees for Genesys, and (iii) the Company believes Genesys will continue to have a shortfall on payment of its service fees for the foreseeable future, leaving no expected residual returns for the shareholder. As of September 30, 2022, the Company had one VIE — Genesys.</p> P3M 21 0.50 0.50 0.06 2000000.0 1600000 1 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;"> 9. SEGMENT AND GEOGRAPHICAL INFORMATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Segment Information</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company’s two<span style="white-space:pre-wrap;"> segments are Energy and Engineering and Consulting, and the Company’s chief operating decision maker, which continues to be its chief executive officer, receives and reviews financial information in this format. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">There were no intersegment sales during the three and nine months ended September 30, 2022 and October 1, 2021. The Company’s chief operating decision maker evaluates the performance of each segment based upon income or loss from operations before income taxes. Certain segment asset information including expenditures for long-lived assets has not been presented as it is not reported to or reviewed by the chief operating decision maker. In addition, enterprise-wide service line contract revenue is not included as it is impracticable to report this information for each group of similar services.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Financial information with respect to the reportable segments is as follows:</p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size: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.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size: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.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size: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.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size: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.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unallocated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Consolidated</b></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">&amp; Consulting</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Corporate</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Intersegment</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:55.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Fiscal Three Months Ended September 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Contract revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 102,625</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 18,774</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 121,399</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,166</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 239</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,405</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Interest expense, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,432</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,435</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment profit (loss) before income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,815)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,473</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (3,108)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,450)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Income tax expense (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,565)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,781</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,742)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,526)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (250)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,692</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,366)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 76</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment assets <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 336,036</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 22,630</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 59,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (23,130)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 395,111</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Fiscal Three Months Ended October 1, 2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Contract revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="-sec-ix-hidden:Hidden_hGWMZ_W7DUqG1ntbSDUt4g;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 81,523</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="-sec-ix-hidden:Hidden_l8zIBpAOO0KoFF-tglIpiQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 16,774</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 98,297</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 244</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,267</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Interest expense, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 937</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 937</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment profit (loss) before income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 2,138</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 2,673</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (4,207)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 604</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Income tax expense (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 610</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,286</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (2,132)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (236)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,529</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,387</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (2,076)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 840</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment assets <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 331,573</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 23,134</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 55,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (23,130)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 386,906</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Fiscal Nine Months Ended September 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Contract revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 262,186</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 53,696</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 315,882</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 12,506</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 734</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 13,240</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Interest expense, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 8</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,208</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,216</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment profit (loss) before income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (12,525)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 8,111</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (9,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (13,611)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Income tax expense (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,143)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,330</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (3,775)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,588)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (7,382)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,780</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,421)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (8,023)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment assets <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 336,036</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 22,630</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 59,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (23,130)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 395,111</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Fiscal Nine Months Ended October 1, 2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Contract revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 209,977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 51,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 261,537</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 11,934</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 744</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 12,678</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Interest expense, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,095</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,100</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment profit (loss) before income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,607)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 7,507</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (14,784)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (12,884)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Income tax expense (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (2,331)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,122</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (6,148)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,357)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (3,275)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,386</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (8,638)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (7,527)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment assets <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 331,573</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 23,134</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 55,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (23,130)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 386,906</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:6.75pt;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Segment assets are presented net of intercompany receivables.</span></td></tr></table><div style="margin-top:12pt;"/><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The following tables provide information about disaggregated revenue by contract type, client type and geographical region: </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0.05pt 0pt 0pt 0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:14.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:14.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:13.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:49.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three months ended September 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering and</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Consulting</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;width:49.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">7,468</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">13,880</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">21,348</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Unit-based</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">43,039</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">3,791</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">46,830</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Fixed price</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">52,118</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">1,103</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">53,221</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">102,625</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">18,774</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">121,399</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Client Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">6,848</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">1,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">8,224</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Government</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">48,073</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">17,348</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">65,421</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Utilities<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (2)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">47,704</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">50</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">47,754</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">102,625</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">18,774</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">121,399</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Geography </b><sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(3)</sup></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Domestic</p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">102,625</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">18,774</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:13.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 121,399</p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:49.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine months ended September 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering and</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Consulting</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;width:49.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">23,873</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">40,221</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">64,094</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Unit-based</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">128,540</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">10,530</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">139,070</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Fixed price</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">109,773</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">2,945</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">112,718</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">262,186</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">53,696</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">315,882</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Client Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">21,638</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">4,330</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">25,968</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Government</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">96,293</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">49,139</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">145,432</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Utilities<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (2)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">144,255</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">227</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">144,482</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">262,186</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">53,696</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">315,882</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Geography </b><sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(3)</sup></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Domestic</p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 262,186</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 53,696</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:13.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 315,882</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0.05pt 0pt 0pt 0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:14.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:14.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:13.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:49.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three months ended October 1, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering and</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Consulting</b></p></td><td style="vertical-align:bottom;width:1.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;width:49.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">9,104</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">13,160</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">22,264</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Unit-based</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">51,470</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">2,650</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">54,120</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Fixed price</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">20,950</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">963</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">21,913</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">81,524</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">16,773</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">98,297</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Client Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">7,741</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">1,568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">9,309</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Government</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">18,537</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">15,181</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">33,718</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Utilities <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(2)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">55,245</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">24</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">55,269</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">81,524</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">16,773</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">98,297</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Geography </b><sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(3)</sup></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Domestic</p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 81,524</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 16,773</p></td><td style="vertical-align:middle;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:13.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 98,297</p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:49.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine months ended October 1, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering and</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Consulting</b></p></td><td style="vertical-align:bottom;width:1.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;width:49.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">25,060</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">40,444</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">65,504</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Unit-based</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">132,688</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">7,817</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">140,505</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Fixed price</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">52,229</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">3,299</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">55,528</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">209,977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">51,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">261,537</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Client Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">20,685</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">4,037</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">24,723</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Government</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">45,766</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">47,391</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">93,157</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Utilities <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(2)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">143,525</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">132</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">143,657</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">209,977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">51,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">261,537</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Geography </b><sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(3)</sup></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Domestic</p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 209,977</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 51,560</p></td><td style="vertical-align:middle;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:13.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 261,537</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:3pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:9pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:6.75pt;font-style:italic;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:italic;font-weight:normal;">Amounts may not add to the totals due to rounding.</i></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:9pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:6.75pt;font-style:italic;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(2)</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:italic;font-weight:normal;">Includes the portion of revenue related to small business programs paid by the end user/customer.</i></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:9pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:6.75pt;font-style:italic;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(3)</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:italic;font-weight:normal;">Revenue from the Company’s foreign operations were not material for the three and nine months ended September 30, 2022 and October 1, 2021. </i></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt;"> <i style="font-style:italic;">Geographical Information</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt;"><span style="font-style:italic;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">Substantially all of the Company’s consolidated revenue was derived from its operations in the U.S. The Company operates through a network of offices spread across 23 U.S. states, the District of Columbia, and Canada. Revenues from the Company’s Canadian operations were not material for the three and nine months ended September 30, 2022 nor for the three and nine months ended October 1, 2021. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:12pt 0pt 12pt 0pt;"><i style="font-style:italic;">Customer Concentration</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:12pt 0pt 12pt 0pt;">For the three and nine months ended September 30, 2022, the Company’s top 10 customers accounted for 57.2%, and 54.5%, respectively, of the Company’s consolidated contract revenue. For the three and nine months ended October 1, 2021, the Company’s top 10 customers accounted for 52.4%, and 46.8%, respectively, of the Company’s consolidated contract revenue.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">For the three months ended September 30, 2022, the Company had one customer, Pueblo County School District, that accounted for 13.3% of its consolidated contract revenues<span style="background:#ffffff;">.</span> For the nine months ended September 30, 2022, the Company had one customer, LADWP, that accounted for 13.2% of its consolidated contract revenues<span style="background:#ffffff;">.</span> <span style="background:#ffffff;">For the three months ended October 1, 2021, the Company had one customer, LADWP, that accounted for </span><span style="background:#ffffff;">17.0%</span><span style="background:#ffffff;"> of its consolidated contract revenue. For the nine months ended October 1, 2021, the Company had no individual customer that accounted for more than 10% of its consolidated contract revenue. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-indent:36pt;margin:12pt 0pt 0pt 0pt;">On a segment basis, the Company had individual customers that accounted for more than 10% of its segment contract revenues. For the three months ended September 30, 2022, the Company derived 38.3% of its Energy segment revenues from three customers, Pueblo County School District, <span style="background:#ffffff;">The Dormitory Authority State of New York (“DASNY”)</span> and LADWP. For the nine months ended September 30, 2022, the Company derived 26.5% of its Energy segment revenues from two customers, LADWP and Pueblo County School District. <span style="background:#ffffff;">For the three months ended October 1, 2021, the Company derived </span><span style="background:#ffffff;">20.4%</span><span style="background:#ffffff;"> of its Energy segment revenues from one customer, LADWP. For the nine months ended October 1, 2021, the Company derived </span><span style="background:#ffffff;">21.5%</span><span style="background:#ffffff;"> of its Energy segment revenues from two customers, LADWP and Consolidated Edison of New York. For the three months and nine months ended September 30, 2022, and for the three months ended October 1, 2021, no single customer accounted for 10% or more of the Company’s Engineering and Consulting segment revenues. For the nine months ended October 1, 2021, the Company derived </span><span style="background:#ffffff;">12.2%</span><span style="background:#ffffff;"> of its Engineering and Consulting segment revenues from one customer, the City of Elk Grove.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;background:#ffffff;margin:2pt 0pt 0pt 0pt;">On a geographical basis, the Company’s largest clients are based in California and New York. For the three and nine months ended September 30, 2022, services provided to clients in California accounted for 37.2% and 40.3%, respectively, of the Company’s contract revenue and services provided to clients in New York accounted for 23.4% and 21.4%, respectively, of the Company’s contract revenue. For the three and nine months ended October 1, 2021, services provided to clients in California accounted for 38.9% and 36.2%, respectively, of the Company’s consolidated contract revenue and services provided to clients in New York accounted for 19.0% and 20.7%, respectively, of the Company’s consolidated contract revenue. </p> 2 0 0 0 0 <p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size: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.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size: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.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size: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.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size: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.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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','Times','serif';font-size: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.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unallocated</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Consolidated</b></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">&amp; Consulting</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Corporate</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Intersegment</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:7pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:55.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Fiscal Three Months Ended September 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Contract revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 102,625</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 18,774</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 121,399</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,166</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 239</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,405</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Interest expense, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,432</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,435</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment profit (loss) before income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,815)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,473</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (3,108)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,450)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Income tax expense (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,565)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,781</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,742)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,526)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (250)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,692</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (1,366)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 76</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment assets <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 336,036</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 22,630</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 59,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (23,130)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 395,111</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Fiscal Three Months Ended October 1, 2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Contract revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="-sec-ix-hidden:Hidden_hGWMZ_W7DUqG1ntbSDUt4g;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 81,523</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"><span style="-sec-ix-hidden:Hidden_l8zIBpAOO0KoFF-tglIpiQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 16,774</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 98,297</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 244</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,267</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Interest expense, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 937</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 937</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment profit (loss) before income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 2,138</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 2,673</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (4,207)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 604</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Income tax expense (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 610</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,286</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (2,132)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (236)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,529</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 1,387</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (2,076)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 840</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment assets <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 331,573</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 23,134</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 55,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (23,130)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 386,906</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Fiscal Nine Months Ended September 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Contract revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 262,186</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 53,696</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 315,882</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 12,506</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 734</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 13,240</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Interest expense, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 8</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,208</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,216</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment profit (loss) before income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (12,525)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 8,111</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (9,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (13,611)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Income tax expense (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,143)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,330</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (3,775)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,588)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (7,382)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,780</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,421)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (8,023)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment assets <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 336,036</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 22,630</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 59,575</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (23,130)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 395,111</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Fiscal Nine Months Ended October 1, 2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Contract revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 209,977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 51,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 261,537</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 11,934</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 744</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 12,678</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Interest expense, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,095</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,100</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment profit (loss) before income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,607)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 7,507</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (14,784)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (12,884)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Income tax expense (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (2,331)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 3,122</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (6,148)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (5,357)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (3,275)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 4,386</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (8,638)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (7,527)</p></td></tr><tr><td style="vertical-align:bottom;width:42.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0pt 12pt;">Segment assets <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 331,573</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 23,134</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 55,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt;"> (23,130)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 386,906</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';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','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:6.75pt;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Segment assets are presented net of intercompany receivables.</span></td></tr></table><div style="margin-top:12pt;"/> 102625000 18774000 121399000 4166000 239000 4405000 -3000 -1432000 -1435000 -1815000 3473000 -3108000 -1450000 -1565000 1781000 -1742000 -1526000 -250000 1692000 -1366000 76000 336036000 22630000 59575000 -23130000 395111000 98297000 4023000 244000 4267000 -937000 -937000 2138000 2673000 -4207000 604000 610000 1286000 -2132000 -236000 1529000 1387000 -2076000 840000 331573000 23134000 55329000 -23130000 386906000 262186000 53696000 315882000 12506000 734000 13240000 -8000 -3208000 -3216000 -12525000 8111000 -9197000 -13611000 -5143000 3330000 -3775000 -5588000 -7382000 4780000 -5421000 -8023000 336036000 22630000 59575000 -23130000 395111000 209977000 51560000 261537000 11934000 744000 12678000 -5000 -3095000 -3100000 -5607000 7507000 -14784000 -12884000 -2331000 3122000 -6148000 -5357000 -3275000 4386000 -8638000 -7527000 331573000 23134000 55329000 -23130000 386906000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0.05pt 0pt 0pt 0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:14.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:14.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:13.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:49.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three months ended September 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering and</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Consulting</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;width:49.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">7,468</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">13,880</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">21,348</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Unit-based</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">43,039</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">3,791</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">46,830</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Fixed price</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">52,118</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">1,103</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">53,221</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">102,625</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">18,774</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">121,399</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Client Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">6,848</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">1,376</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">8,224</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Government</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">48,073</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">17,348</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">65,421</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Utilities<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (2)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">47,704</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">50</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">47,754</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">102,625</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">18,774</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">121,399</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Geography </b><sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(3)</sup></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Domestic</p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">102,625</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">18,774</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:13.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 121,399</p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:49.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine months ended September 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering and</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Consulting</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;width:49.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">23,873</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">40,221</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">64,094</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Unit-based</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">128,540</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">10,530</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">139,070</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Fixed price</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">109,773</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">2,945</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">112,718</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">262,186</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">53,696</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">315,882</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Client Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">21,638</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">4,330</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">25,968</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Government</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">96,293</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">49,139</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">145,432</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Utilities<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (2)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">144,255</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">227</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">144,482</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total<sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;"> (1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">262,186</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">53,696</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">315,882</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Geography </b><sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(3)</sup></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Domestic</p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 262,186</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 53,696</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:13.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 315,882</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0.05pt 0pt 0pt 0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:14.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:14.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','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:13.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:49.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three months ended October 1, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering and</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Consulting</b></p></td><td style="vertical-align:bottom;width:1.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;width:49.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">9,104</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">13,160</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">22,264</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Unit-based</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">51,470</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">2,650</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">54,120</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Fixed price</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">20,950</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">963</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">21,913</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">81,524</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">16,773</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">98,297</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Client Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">7,741</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">1,568</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">9,309</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Government</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">18,537</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">15,181</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">33,718</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Utilities <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(2)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">55,245</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">24</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">55,269</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">81,524</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">16,773</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">98,297</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Geography </b><sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(3)</sup></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Domestic</p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 81,524</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 16,773</p></td><td style="vertical-align:middle;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:13.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 98,297</p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:49.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine months ended October 1, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.31%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Energy</b></p></td><td style="vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Engineering and</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Consulting</b></p></td><td style="vertical-align:bottom;width:1.64%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:15.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="8" style="vertical-align:bottom;width:49.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands)</i></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Contract Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Time-and-materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">25,060</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">40,444</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">65,504</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Unit-based</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">132,688</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">7,817</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">140,505</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Fixed price</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">52,229</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">3,299</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">55,528</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">209,977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">51,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">261,537</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Client Type</b></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">20,685</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">4,037</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">24,723</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Government</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">45,766</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">47,391</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">93,157</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Utilities <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(2)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">143,525</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">132</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">143,657</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Total <sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">209,977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">51,560</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">261,537</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:48.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Geography </b><sup style="font-size:6pt;line-height:100%;top:0pt;vertical-align:top;">(3)</sup></p></td><td style="vertical-align:bottom;width:2.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:14.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:13.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:middle;width:48.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">Domestic</p></td><td style="vertical-align:middle;width:2.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 209,977</p></td><td style="vertical-align:middle;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:14.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 51,560</p></td><td style="vertical-align:middle;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.21%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">$</p></td><td style="vertical-align:middle;width:13.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;"> 261,537</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:3pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:9pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:6.75pt;font-style:italic;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:italic;font-weight:normal;">Amounts may not add to the totals due to rounding.</i></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:9pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:6.75pt;font-style:italic;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(2)</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:italic;font-weight:normal;">Includes the portion of revenue related to small business programs paid by the end user/customer.</i></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:9pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="width:36pt;"/><td style="font-family:'Times New Roman','Times','serif';font-size:6.75pt;font-style:italic;vertical-align:top;white-space:nowrap;width:18pt;padding:0pt;">(3)</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:italic;font-weight:normal;">Revenue from the Company’s foreign operations were not material for the three and nine months ended September 30, 2022 and October 1, 2021. </i></td></tr></table> 7468000 13880000 21348000 43039000 3791000 46830000 52118000 1103000 53221000 102625000 18774000 121399000 6848000 1376000 8224000 48073000 17348000 65421000 47704000 50000 47754000 102625000 18774000 121399000 102625000 18774000 121399000 23873000 40221000 64094000 128540000 10530000 139070000 109773000 2945000 112718000 262186000 53696000 315882000 21638000 4330000 25968000 96293000 49139000 145432000 144255000 227000 144482000 262186000 53696000 315882000 262186000 53696000 315882000 9104000 13160000 22264000 51470000 2650000 54120000 20950000 963000 21913000 81524000 16773000 98297000 7741000 1568000 9309000 18537000 15181000 33718000 55245000 24000 55269000 81524000 16773000 98297000 81524000 16773000 98297000 25060000 40444000 65504000 132688000 7817000 140505000 52229000 3299000 55528000 209977000 51560000 261537000 20685000 4037000 24723000 45766000 47391000 93157000 143525000 132000 143657000 209977000 51560000 261537000 209977000 51560000 261537000 23 0.572 0.545 0.524 0.468 0.133 0.132 0.170 0.383 0.265 0.204 0.215 0.122 0.372 0.403 0.234 0.214 0.389 0.362 0.190 0.207 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 10pt 0pt;"><b style="font-weight:bold;">10. INCOME TAXES </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Income taxes are accounted for under the asset and liability method. Deferred tax assets and liabilities are recognized for the future tax consequences of temporary differences between the financial reporting basis and tax basis of the Company’s assets and liabilities, subject to a judgmental assessment of the recoverability of deferred tax assets. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is recorded when it is more likely than not that some of the deferred tax assets may not be realized. Significant judgment is applied when assessing the need for valuation allowances and includes the evaluation of historical income (loss) adjusted for the effects of non-recurring items and the impact of recent business combinations. Areas of estimation include the Company’s consideration of future taxable income which is driven by verifiable signed contracts and ongoing prudent and feasible tax planning strategies. Should a change in circumstances lead to a change in judgment about the utilization of deferred tax assets in future years, the Company would adjust the related valuation allowances in the period that the change in circumstances occurs, along with a corresponding increase or charge to income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">During each fiscal year, the Company assesses the available positive and negative evidence to evaluate if it is more likely than not that the deferred tax assets will be realized. At the end of fiscal year 2018, the Company determined that it was more-likely-than-not that the entire California net operating loss will not be utilized prior to expiration. Significant pieces of objective evidence evaluated included the Company’s history of utilization of California net operating losses in prior years for each of its subsidiaries, as well as its forecasted amount of net operating loss utilization for certain members of the combined group. As a result, at that time, the Company recorded a valuation allowance in the amount of $86,000 related to California net operating losses. During fiscal year 2021, the Company determined that it was more-likely-than-not that the New Jersey net operating losses will not be utilized prior to expiration and, accordingly, recorded a valuation allowance of $1.1 million. Significant pieces of objective evidence evaluated included the Company’s proportional increase of revenue to other states resulting in a dilution of New Jersey sourced income as well as the Company’s forecasted amount of net operating loss utilization in New Jersey for certain members of the combined group. At the end of fiscal year 2021, the total valuation allowance was $1.2 million, compared to a balance of $86,000 for fiscal year 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">As of September 30, 2022, the Company assessed all available positive and negative evidence available to determine whether, based on the weight of that evidence, there was a change in judgment related to the utilization of deferred tax assets in future years. The Company concluded that as of September 30, 2022, the valuation allowance for the Company’s deferred tax assets was appropriate in accordance with ASC 740. Consequently, there was no change to the valuation allowance during the three and nine months ended September 30, 2022. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">For acquired business entities, if the Company identifies changes to acquired deferred tax asset valuation allowances or liabilities related to uncertain tax positions during the measurement period and they relate to new information obtained about facts and circumstances that existed as of the acquisition date, those changes are considered a measurement period adjustment, and the Company records the offset to goodwill. The Company records all other changes to deferred tax asset valuation allowances and liabilities related to uncertain tax positions in current period income tax expense.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company recognizes the tax benefit from uncertain tax positions if it is more likely than not that the tax positions will be sustained on examination by the tax authorities, based on the technical merits of the position. The tax benefit is measured based on the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement. The Company recognizes interest and penalties related to unrecognized tax benefits in income tax expense. During the three and nine months ended September 30, 2022, the Company did not record a liability for uncertain tax positions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Based on the Company’s estimates and determination of an effective tax rate for the year, the Company recorded an income tax benefit of $1.5 million and $5.6 million for the three and nine months ended September 30, 2022, respectively, as compared to an income tax benefit of $0.2 million and $5.4 million for the three and nine months ended October 1, 2021, respectively. During the three and nine months ended September 30, 2022, the difference between the effective tax rate and the federal statutory rate was primarily attributable to state taxes, non-deductible stock compensation, nondeductible executive compensation, research and development tax credits, and the commercial building energy efficiency deduction. During the three and nine months ended October 1, 2021, the difference between the effective tax rate and the federal statutory rate was primarily attributable to state taxes, excess tax benefit on stock compensation, nondeductible executive compensation, research and development tax credits, the commercial building energy efficiency deduction, and additional benefits provided by the Coronavirus Aid, Relief, and Economic Security (CARES) Act (H.R. 748). </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;"><span style="font-size:10pt;">On June 10, 2021, the Company received notice from the State of New York indicating that the Company’s </span><span style="font-size:10pt;">2017</span><span style="font-size:10pt;">, </span><span style="font-size:10pt;">2018</span><span style="font-size:10pt;">, and </span><span style="font-size:10pt;">2019</span><span style="font-size:10pt;"> state tax returns were under examination. The examination was finalized during the Company’s first quarter of fiscal 2022 and there were no changes made by the State of New York to the state tax returns filed.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 86000 1100000 1200000 86000 0 0 -1500000 -5600000 -200000 -5400000 2017 2018 2019 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">11. EARNINGS PER SHARE (“EPS”)</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Basic EPS is computed by dividing net income available to common stockholders by the weighted-average number of common shares outstanding. Diluted EPS is computed by dividing net income by the weighted-average number of common shares outstanding and dilutive potential common shares for the period. Potential common shares include the weighted-average dilutive effects of outstanding stock options and restricted stock awards using the treasury stock method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The following table sets forth the number of weighted-average common shares outstanding used to compute basic and diluted EPS:</p><p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three months ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine months ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:middle;white-space:nowrap;width:54.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands, except per share amounts)</i></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income (loss) </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 76</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 840</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (8,023)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (7,527)</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted-average common shares outstanding</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 13,110</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,606</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,971</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,391</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Effect of dilutive stock options and restricted stock awards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 250</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 535</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted-average common shares outstanding-diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 13,360</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 13,141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,971</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,391</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Earnings (Loss) per share:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 0.01</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 0.07</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (0.62)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (0.61)</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 0.01</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 0.06</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (0.62)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (0.61)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">For the three months ended September 30, 2022 and October 1, 2021, the Company excluded 401,000 and 26,000 common shares subject to outstanding equity awards, respectively, from the calculation of diluted shares because their impact would have been anti-dilutive. For the nine months ended September 30, 2022 and October 1, 2021, the Company reported a net loss, and accordingly, all outstanding equity awards have been excluded from such periods because including them would have been anti-dilutive.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';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;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three months ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine months ended</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">October 1,</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:middle;white-space:nowrap;width:54.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><i style="font-style:italic;">(in thousands, except per share amounts)</i></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net income (loss) </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 76</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 840</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (8,023)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (7,527)</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted-average common shares outstanding</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 13,110</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,606</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,971</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,391</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Effect of dilutive stock options and restricted stock awards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 250</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 535</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Weighted-average common shares outstanding-diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 13,360</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 13,141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,971</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 12,391</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Earnings (Loss) per share:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 0.01</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 0.07</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (0.62)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (0.61)</p></td></tr><tr><td style="vertical-align:bottom;width:43.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.77%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 0.01</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"> 0.06</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.73%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (0.62)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.7%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (0.61)</p></td></tr></table> 76000 840000 -8023000 -7527000 13110000 12606000 12971000 12391000 250000 535000 13360000 13141000 12971000 12391000 0.01 0.07 -0.62 -0.61 0.01 0.06 -0.62 -0.61 401000 26000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">12. CONTINGENCIES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 12pt 36pt;"><span style="font-style:italic;font-weight:bold;">Claims and Lawsuits</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">The Company is subject to claims and lawsuits from time to time, including those alleging professional errors or omissions that arise in the ordinary course of business against firms that operate in the engineering and consulting professions. The Company carries professional liability insurance, subject to certain deductibles and policy limits, for such claims as they arise and may from time to time establish reserves for litigation that is considered probable of a loss.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">In accordance with accounting standards regarding loss contingencies, the Company accrues an undiscounted liability for those contingencies where the incurrence of a loss is probable and the amount can be reasonably estimated, and discloses the amount accrued and an estimate of any reasonably possible loss in excess of the amount accrued, if such disclosure is necessary for the Company’s financial statements not to be misleading. The Company does not accrue liabilities when the likelihood that the liability has been incurred is probable but the amount cannot be reasonably estimated, or when the liability is believed to be only reasonably possible or remote.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">Because litigation outcomes are inherently unpredictable, the Company’s evaluation of legal proceedings often involves a series of complex assessments by management about future events and can rely heavily on estimates and assumptions. If the assessments indicate that loss contingencies that could be material to any one of the Company’s financial statements are not probable, but are reasonably possible, or are probable, but cannot be estimated, then the Company will disclose the nature of the loss contingencies, together with an estimate of the possible loss or a statement that such loss is not reasonably estimable. While the consequences of certain unresolved proceedings are not presently determinable, and a reasonable estimate of the probable and reasonably possible loss or range of loss in excess of amounts accrued for such proceedings cannot be made, an adverse outcome from such proceedings could have a material adverse effect on the Company’s earnings in any given reporting period. However, in the opinion of the Company’s management, after consulting with legal counsel, and taking into account insurance coverage, the ultimate liability related to current outstanding claims and lawsuits is not expected to have a material adverse effect on the Company’s financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;margin:0pt;"><b style="font-weight:bold;white-space:pre-wrap;">13. SUBSEQUENT EVENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;background:#ffffff;">Seventh Amendment to the Credit Agreement</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="background:#ffffff;">On November 1, 2022</span>, the Company entered into the Seventh Amendment to the Credit Agreement (the “Seventh Amendment”). The Seventh Amendment, (A) waives the minimum Adjusted EBITDA (as defined in the Fifth Amendment) threshold and any related Default or Event of Default (each as defined in the Fifth Amendment) for the fiscal quarter ending September 30, 2022, (B) amends the maximum Total Leverage Ratio (as defined in the Fifth Amendment) threshold and the minimum Adjusted EBITDA threshold for the remainder of the Extended Covenant Relief Period, (C) amends the pricing structure of borrowings under the Credit Agreement during the remainder of the Extended Covenant Relief Period, (D) restricts aggregate borrowings under the Revolving Credit Facility to no more than $10.0 million at any time during the period from November 1, 2022 through the date on which financial statements and compliance documents have been received by the Administrative Agent (as defined in the Credit Agreement) for the fiscal quarter ending March 31, 2023, (E) conditions access to the accordion feature of the Credit Agreement to periods when the Company’s Total Leverage ratio is less than 3.0, (F) amends the Total Leverage Ratio requirement contained in the conditions precedent required upon any Credit Event (as defined in the Credit Agreement) occurring prior to the delivery to the Administrative Agent of the financial statements and compliance documents required for the fiscal quarter ending March 31, 2023, (G) includes a general release of all Claims (as defined in the Seventh Amendment) against the Administrative Agent, the L/C Issuer and the Lenders (each as defined in the Credit Agreement) and (H) amends the timing requirement of certain financial reports. Additionally, during the remainder of the Extended Covenant Relief Period, the Company may not make Share Repurchases (as defined in the Seventh Amendment). </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;background:#ffffff;margin:0pt;">Pursuant to the Seventh Amendment, during the Extended Covenant Relief Period, (A) borrowings under the Credit Agreement will bear interest at SOFR plus 4.00%; provided, that SOFR cannot be less than 0.00%, and (B) the Company will pay a commitment fee of 0.50% per annum for the unused portion of the revolving credit facility under the Credit Agreement. </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:18pt;background:#ffffff;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:36pt;margin:0pt;">After the Extended Covenant Relief Period, borrowings under the Credit Agreement will bear interest at either a Base Rate or SOFR (plus 0.10% or 0.15% depending on the interest period), each as defined in the Credit Agreement, at the Company’s option, and in each case, plus an applicable margin, which applicable margin will range from 0.125% to 1.25% with respect to Base Rate borrowings and 1.125% to 2.25% with respect to SOFR borrowings, depending on the Total Leverage Ratio; provided, that SOFR cannot be less than 0.00%. The Company will also pay a commitment fee for the unused portion of the revolving credit facility and the <span style="-sec-ix-hidden:Hidden_Hnb2YF8zFUOLNrYbdgKIWw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">delayed</span></span> draft term <span style="-sec-ix-hidden:Hidden_G2njjrLI9U2LEKTkuURLyw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">loan</span></span> facility under the Credit Agreement, which will range from 0.15% to 0.40% per annum depending on the Total Leverage Ratio, and fees on the face amount of any letters of credit outstanding under the revolving credit facility, which will range from 0.84% to 1.688% per annum, in each case, depending on whether such letter of credit is a performance or financial letter of credit and the Total Leverage Ratio.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:36pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;text-indent:36pt;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:18pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:11pt;text-indent:36pt;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p> 10000000.0 3.0 0.0400 0.0000 0.0050 0.0010 0.0015 0.00125 0.0125 0.01125 0.0225 0.0000 0.0015 0.0040 0.0084 0.01688 EXCEL 86 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( -*:8U4'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " #2FF-5_R&ULS9+! M:L0@$(9?I7A/)AKH0;*YM/34A84NM/0F.KLKC49T2K)O7V-WLY3V 0I>G/G] MYANPTT'J,>(NC@$C64QWLQM\DCILV(DH2("D3^A4JG/"Y^9AC$Y1OL8C!*4_ MU!%!-,T]."1E%"E8@%58B:SOC)8ZHJ(Q7O!&K_CP&8<",QIP0(>>$O": ^N7 MB>$\#QW< N,,+KT74"S$DOU3VSI +LDYV37U#1-]=267-Z!P]OV^:6L6UF? M2'F-^56RDLX!-^PZ^;5]>-P_L5XT0E2<5TV[%ZT4(I_WQ?6'WTW8C<8>[#\V MO@KV'?SZ%_T74$L#!!0 ( -*:8U697)PC$ 8 )PG 3 >&PO=&AE M;64O=&AE;64Q+GAM;.U:6W/:.!1^[Z_0>&?V;0O&-H&VM!-S:7;;M)F$[4X? MA1%8C6QY9)&$?[]'-A#+E@WMDDVZFSP$+.G[SD5'Y^@X>?/N+F+HAHB4\GA@ MV2_;UKNW+][@5S(D$4$P&:>O\, *I4Q>M5II ,,X?+&A T%116F]?(+3E'S/X%/F7/Z3H=,H%N,!M8('_.;Z?D3EJ(X53"Q,!J9S]6:\?1 MTDB @LE]E 6Z2?:CTQ4(,@T[.IU8SG9\]L3MGXS*VG0T;1K@X_%X.+;+THMP M' 3@4;N>PIWT;+^D00FTHVG09-CVVJZ1IJJ-4T_3]WW?ZYMHG J-6T_3:W?= MTXZ)QJW0> V^\4^'PZZ)QJO0=.MI)B?]KFNDZ19H0D;CZWH2%;7E0-,@ %AP M=M;,T@.67BGZ=90:V1V[W4%<\%CN.8D1_L;%!-9ITAF6-$9RG9 %#@ WQ-%, M4'RO0;:*X,*2TER0UL\IM5 :")K(@?5'@B'%W*_]]9>[R:0S>IU].LYKE']I MJP&G[;N;SY/\<^CDGZ>3UTU"SG"\+ GQ^R-;88C'(CN]WV6'WV3T=N(]>IP+,BUY1&)$6?R"VZ MY!$XM4D-,A,_")V&F&I0' *D"3&6H8;XM,:L$> 3?;>^",C?C8CWJV^:/5>A M6$G:A/@01AKBG'/F<]%L^P>E1M'V5;SC MFED)O816:I^JAS0^J!XR"@7QN1X^Y7IX"C>6QKQ0KH)[ ?_1VC?"J_B"P#E_ M+GW/I>^Y]#VATK\>WZV22$KYI9+2,6D$N!LT$DN/R+RO JQ GH9%LE" M0AMNZ5/U2I77Y:^Y*+@\6^3IKZ%T/BS/^3Q?Y[3-"S-#MW)+ZK:4OK4F.$KT ML@'37[]EUVY".E,%.70[@:0KX#;;J=W#HXGIB1N0K3 M4I!OP_GIQ7@:XCG9!+E]F%=MY]C1T?OGP5&PH^\\EAW'B/*B(>ZAAIC/PT.' M>7M?F&>5QE T%&ULK"0L1K=@N-?Q+!3@9& MH >#KU$"\E)58#%;Q@,KD*)\ M3(Q%Z'#GEUQ?X]&2X]NF9;5NKREW&6TB4CG":9@39ZO*WF6QP54=SU5;\K"^ M:CVT%4[/_EFMR)\,$4X6"Q)(8Y07IDJB\QE3ON>;G*YZ(G;ZEW?! M8/+]<,E'#^4[YU_T74.N?O;=X_INDSM(3)QYQ1$!=$4"(Y4U#VT%SU&\Z.9X!ZSAW.;>KC"1:S_6-8>^3+?.7#;.MX#7N83 M+$.D?L%]BHJ $:MBOKJO3_DEG#NT>_&!()O\UMND]MW@#'S4JUJE9"L1/TL' M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5 MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$% @ MTIIC50UJ'SCX!0 UQ\ !@ !X;"]W;W)K=&CR]$KZ6(CU?=T)80F3U$8IY>=E=;)NUXO]58BXNFQ M3$0,ORRDBKB&6[7LI8D2W,^#HK#''.>T%_$@[@PO\F42(3"TT:"P]=:C$48&B4HQ[]; MT4[YGR;PY?5._3:'!YA'GHJQ#+\&OEY==LX[Q!<+GH7Z7F[^$%N@$Z/GR3#- M/\FF>+??[Q O2[6,ML%0@BB(BV_^M*V(EP%.30#;!K W ;3N']QM0%YSO:)D M.=8UUWQXH>2&*/,VJ)F+O&[R:* )8M.,AFTBB8\]LE-K /] M3"9QT3U,-7=)NN)*I!<]#?]F8GK>5OFJ4&8UR@/R4<9ZE8*J+_S7\3TH95E4 MMBOJ%4,%YR(Y)JYS1)C#F*4\8SQ\*M?'Q&&V\%?%<%26F6V M2AFC42WQ3DN\TX8MIC@DW7PPU_/A6@L>IE9 -*PEX%D)>-8,<"94($WR\@FD M0&OOQ)7*Q%*;6=#XEISG)>& MMH0;E'"#)G#W8AF8- JM.>61M0EQG:^3N[OKT92\O__T9794%&\R'1_;>%&E MEKS4J>9;IPGQ)/:D@M&8S[)'9*ZAYQ*IR%AFL5;/\.U;JV&/^O6-C1@/:HO\ MPF+0)L@/_(E,?!BQP2+P"G=1WY_W2-)^EPY.**76X8H'M^5E%2]KPCOR?5!/ MCW87Y [>(Y]B>[OBDJSO4'+#4TT^0$<)0TY&:Q';9QU- MM-+CDO,LT*(HHNLX5N9#F"-:N2.*^YNWS&-S!Z/Y06YB*R\N-XKY2@21%?00 MEHE6GHGB3ND98:>*;D. M8L_.BFN.1U;00[@H6MDHBKN?O*^.E.#U+8@+G-<,R4.8)EJY)HI;GCOI0<>< MK62,V:8](GW6[PYHOV_E.X1OHI5QHKCC>0@T&$*Y()3]^O@;F0LO4]"25DA< M:2RC".;BN9;>]R.2<$76/,P$^=DYADDG@45NO@5@K8-#>"E6>2F&NQU8VOA! MO"3SY^A1AC;T/0)?[ZZGUIV$0Q@F5ADFAKN;76.2FR=OQ>.EJ'7%>X2FH_GU MR+KRQ@/;$E86B36R2.-,*;.$*Q:F>5-"FLVLNTU[%+]9]ZC&>%1;SLH,L49F M:!)KH8H=2[-&Y3MP*R>N6,=Y" /$*@/$&AD@LTB%-0S,E$NIK+EHC\[(\P1( M@(!?B%E9#^&!6.6!6",/-(]X&)*K+(6?4WN/Q75J=U7PN+9\E?-AC9S/3234 MT@S)]Z"@5^ .HH3']D9MN7V$Q[4%K9P/PXW+KB%7L*!"\7"9>KQ#."!6.2#6 M:./H]?0^SW?SR:=,@W&/S>QI)?Y!WF9;#X7:2:YFSI760^JR07]@-MO6-L;* M!;$]WF4[@=P&J;%[WP2X%VPC<(]&S-/7OD/KO6$X9#V!ZWLCTN[E;>,N:M64^(B]5MY>)A;1DKX^,V,SZ MJ0!Q$OOBB7P0UKRS1\IQ'.J>.?T3:W_%@]MROC@@ M-JOB/F)(4N;C1,LD/8A^EUC+*+U>"^T*9%^#WA91Z=V/^H#S+'_X'4$L# M!!0 ( -*:8U6%84-$'P< )@? 8 >&PO=V]R:W-H965T&ULK5EM;]LX$OXKA#>XVP6?69D.A8JB5Z1 M4%+Q8J MVXJ2JW=R)RKX92/KDFMXK1\6:E<+OFX'E<6"8APM2IY7L^5%^^VN7E[(1A=Y M)>YJI)JRY/6/#Z*0CY%1'S\B8D#6FG7#-5]>U/(1U48:M)F'UC?M:+ FK\PRKG0-O^8P3B^O/W^ZN?VT MNKU!\+3Z_/'/FZNO\/+AZN/5I^M;M/KC]O;K"IVCOU8WZ.>S7] 9RBOT=2L; MQ:NUNEAHP& T+;)NO@^'^>C$?"NQ>X<8GB.**74,O_8/OQ$9#"?M<'(Z? &6 M]^;3WGS:ZF-3YC=U+2J-N%)"J_PX* K<"$V7OU8YGXG(&8:1$O1>SY3]^ M(A'^U67=&RD[L97UMC*?]N4U5UL$JX8R\R#^;O(]+\!XYRH>5$6M*I,*]LLD M(MU6=:$+ MK7GC(*7!")TM%:8T2=SHHAY=Y$7W66_!D<.*.?%%]LRP7T;P;*&(1K$;7=RC MB[WH[FJQX_D:B>_ ?DJH=OEE"SD[20 NU+$%*$A2,D+M$$ICZD:=]*@3+^JO M4O/B!0 3:VX2!H2.(3K$P) P=8-,>Y"I%^0MI)%=V0($GQ8"&'4KBS7*RUTM M]\+\HMKP=2%/+4@0)D$\ FY+D2@.)[8$P0/Q82_RWZ50P;,_),+%B MZ7FY4W!'K$R\X-IRZEQNSALE/$O?:3F9G\8D',-TB(4DGG+A0)[$RU==U.>5 MYM5##E'?(9U<[T[=29@$)!FG (=8"%:Q";@#_Q$_ 1[@>KS);#>1)++@.<18 M$DS!&WB/^(GO1FP$Q#K$3I7)4B#-OPN/+VV6H3B-\!BL+4:B))B(>C*P$?'3 MT2$Y>7QITPQ+(=V/LY)3+@CH1.XD R&1Z$6579'S^[S(=2[VTXS\,#3L-MKF*LB 99UV'&(NB*4XC ZD1/ZL!Q+J!37ZT M+DZ4-EV%.$W'I99#C(51@B=0#JQ&_+1FJJV\>C ;*)/0LZY%S=NVT^=8!YT% M5J7@D"*8XLB-F YT1OUTUM>'SSB6.BB+DHB-8+K$6)!.Y TZ$!OU$]LGJ85W M>U(75X5DG-><8IA-N?&H'_13VF]YU?87;26#Y'V1/[0+[_:E351I;"%UL!F; M\N/ 9=3/91];?$]K[6Q6J,U309*D8WBV5!C&X02^@CS6ZW4I9: M39E#+ E#-M$TTH&OJ)^O)J-M#I^4ZO?/3M;FL],"FZ=(%([9S"$5QU/P!RZC M?BX;!>$K0-NTE<16X^.0(CB.IF /Y$;]Y':H@RM9O30\;.)H?M*]JY]:-&7LGZ,S_ X3R*\UVO.B$7-$\!QCC-26U^:8J=%;6>?_%6MH MX^33UUPI4P"W9U"-5M \KV&[.)WGA?.:C?+_*SIUV5 ','\=8((#>'3*7\&$ MOWY%A,UI&K=>(G2>X,#OOK<]YV6.0H.-2V27$)W*>4,IPORER-5ZG1O:@,1G MSBS/\PIE?)=#(G0"M*K"8$.%P?P5!K1S3=D47(O^1%66 ML(FVYJ9O#^0HE3L'OFG;S>SZY'RJ.F%#=<+\U%J&W M ?IB^*EUW^0\4W+*.M-RU M-ZGW4FM9MH];P0&V$8#?-Q+J[>[%7,[VE_'+_P%02P,$% @ TIIC592I M/DUD P $@T !@ !X;"]W;W)KJ8;&9QK66 M^):AGY[.OSTLE@_KY8)@:_WMR^?%[!$[][,OLX?YDJP_+9>/:W*UHA)B'8)F M/N77Y"/YL5Z0JP_7Y -A,7D,1:IH'*BQK9&30;;](OY]'M\[$G\-R2WI.#?$ M[KX ']W=S-VMN]N8B3(=7ID.+\/K',&;^;Y(8ZUPA?K ]G3#X890 MCHN=QCX0+!L2B'2CMRG'%9C;-HG.HW2;HYC2O%,)]6%B8>TID'NPIK__YO:= M/YI2<"&P6D(Z94(Z;>@72T@>I9]%,5O+?CKH]X*("4$!$O)?VJBUKWD7%T(K*:U5VKMM<[5*ZTW)*&2["E/@5QAE0:" MX_>JZ\?)?Z_HGV%8DS H)0S>)8$IE9ZF/_B%U6O>;18UPL.2\/!= MA/&\5QHW=!;O3K$>GF3=9E%C/2I9CUIK>BZB"&\ 1PMZ=,F"OA!83:CKO)S. M3NL$5:6^KYZ+ "<*^I15G7[E=5=(%/\7PYPM_T$;^3_A@(OX,\1T6#9+,*N7%C- MU\)7*GT2+([[$9HO!%GS1 _6D : WR_%4(_=\RU MN/P,FOX/4$L#!!0 ( -*:8U7[9?HYS < + G 8 >&PO=V]R:W-H M965T&ULK5IM;]LV$/XKA%<,+5#'(JG7+#'06.H:8$V*.MT^ M*Q9M"Y5%3Z*3=K]^U(LMBSRQS:9^:"SIX9'/\7CW4.+5,R^^EEO&!/JVR_+R M>K(58G\YFY6K+=O%Y07?LUP^6?-B%PMY66QFY;Y@<5(WVF4S8EGN;!>G^61^ M5=_[5,RO^$%D:H(GQQN?T\U65#=F\ZM]O&%+)K[L M/Q7R:G:RDJ0[EI3=_@RHJ1J4"/^3-ES>?8;550>.?]:7=PFUQ.K M&A'+V$I4)F+YYXDM6)95EN0X_FZ-3DY]5@W/?Q^MOZ_)2S*/<N)/4,+6\2$3G_GS!]82G;5!3GS7<:\>%L8CG5P5_1D6% MEM:J'[7WZ];27VE>!+^+HSNEE&(Y*_E_1^WX;L'>;%\D'\^ M1GHW,8%*U&:HX]=5,R,%67T#0_N9=-+) M4^3HJ1MB-+AD^PM$K;>(6(0 XUF8F]^OQ 6R<-T<0W3^7^_1?^Z]YPQZ"AM: MVZ-CAPT4"$U7-MQ5E2DORWV\8M<3F0I+5CRQR?S77[!K_0;-PIC&PC&-12,9 MZ\V7?9HOVV1]OI!KH9!)6>;V)Y8?�-C06WME#5EZ#U4:&.HMCQ?=*'13J,N-BAG;4>6^?$UC%&9Y@6L@ZA%2]%B?A:_NBS1Z_3 M?)4=2EFBJL=)#<^^R\=9+%@B"XV<@E4:-Z4L3U"\XX5(_ZEOO+F$G.>,&<-C M&@O'-!:-9*PWJ^YI5EUC#"_C+"Y266BJ&7F6*@:L*HT-YSRBL$TL)8AU%':I M[2I!K*-D<&);B6$=9?L.)7 (>R>RGIGLX?$8M5SJ.NG*=-52YV++BC9HFQB' M_.#I8R>VHRS3A8ZRJ4\4AJ&.DFO4#Q1W10 ,8]^U8$_X)T_X1D\\DM MVL??"YYE2,3?V@=LM\_X=\;0HYS+=0JOV;:G7I19U*-*Q (P'%!/7;4 3$:V MJ]3S"( YGD,'5BT^VUA@HU_>QZLT2\71,^OF\E1D0?Y8YT^(K]('4-3!*GL= MY0:JF(D E'?N\#YWTG$GYI@0?/5U6FU@$YFI=M42K;4#2)I .4/-4@#*)FKZ M"0&4ZQ(U3T,]VM0.!EAW>P)LE+#ST"2;0.I4)V5;CDH=0!%7%9P "E-BJPD: M@DEC_@#W3E]CL\"^KXHRR-'6.@Q[%:JZ L)9@3ODBTZ+8K,8 MO>H\4Z($QMFZKL 5L8NRY6V0.X MP,=#P=YI4^P9]4@=["AM7=#..KPOPD:9^U(-,JJU<%1KT5C6^G/2J61LELFW MN6#2KC@NPK%W53[*C: M;P'!"%5??$ HQ_%]E3P$H\[ VSO2"4EB%I)W3)RJ2U9% $A85W*>QE;'^&H& M" '0U+>(*B4@F.>0(;*=Z)]A+Z^JHUL)1 MK45C6>M/3R=ZB5GT?LD+%F?I/W(GMXG3O)T3)'N]C% 7] Z)M"V M_@!HZ@6^HY*&8'@P9IORF.HR&U!\XD47LBC"N11K86C6HO& MLM:?EDX@$[- OHG+=%5]^4$)S[*X*+N)@<.Q,>>=A8=U86$U($&49_7^:0&J M-YI:%Z[Z<6P A@<"M%/-Q*R:PS0[5)^Y7N"+X*=\ :(T;:&C0/(P;( \[00U MM8RK\Z_ZZ A+IO&3W*YOV/'T C^(4L1Y(E_^"OUF-;"4:U%8UGK M3U G_:E9^G?KM)D9,""I+KLQQ>K[T 4$(ZX6DB L\%2M#\)H,!22G=2G9JE_ MOAY-G('7MI2Z&F<(AFTU!T$PB#,$TSG/SDX@[5BQJ8]^E5(7'7+1G"HYW3T= M+WM7'ZI2[M_@RP4&[H?X,FH.CW7FF[-L'^-BD^8ERMA:=F5=>'*L17,\K+D0 M?%^??WKD0O!=_7/+8JG>*H!\ON9<'"^J#DZ'].;_ E!+ P04 " #2FF-5 M0#33D:$. !!F & 'AL+W=O9J6.^274=SR0B,4VWC;-QNCO[D9482Q-)5"DZ3O;7+RDKA@!< M7A+.L;M?$BD!S[W P8/WX (ZOZWJC[M%63;.Y_5JLWMQLFB:[8]G9[O9HEP7 MN^?5MMRT__.AJM=%TWZMK\]VV[HLYON'UJLSWW7CLW6QW)Q+YKN'\XNSK?%=7E5-K]MW];M MM[-[E/ER76YVRVKCU.6'%RV)?XU[*\W1U]=KJJ_%Y5'[LOK^G)OLWOP^/-7=+&O?%N9WXM=.:U6 M_U[.F\6+D_3$F9=#0QP]X 4]#_B'!WSM 3_I>2 X/!!H#X1QSP/AX8%0=RGM>2 Z M/!"-K4-\>"#>M_U=8^U;.BN:XN*\KFZ=NBO=HG4?]G3MGVX;>+GI>M954[?_ MNVR?:RZFEV^R_,U5GCGMIZO+7UYG+]^W7Z[>MW_]FK]Y?^5J];KM>5=--?M(/#WEGWXYGR^[GENLG+?%/\7&R>.Z[W@^.[OD?1=P<5[Z&Z^>O3A>?[YV>?CDDBRH03UPO5 M8IE9[#1,4[50;A;RW;&K-1-KO%M;?MQMBUGYXJ3M=;NR_E2>7/SU+RW,WZG.C 3+D6 "!*8P M&-XS&.[1@QX&VT':+KR[=IAFY=VG9]T$M9]>%M5J7M:[=F;[XV;9?*%X#('M M,$6"94BP' DF0& *W=$]W1$[8*_NEJ3J@S.[6T=V'='.[:6?:EOA9M=D< M7FYNE\W"*=?;5?6E+ \%MS?U;-%UEVT[\*D.$9GSC#:H(W/H!ZD^\[&UL&4/ M"29(]R-Z&HWO68F?CI7CN9AB*#8J$&N+Q93UUG8@(L%R))@ @2F4)_>4)UC* ME^TZN^FBC:^<]PQ UJSMC)P8?27R$VVH(@WF2##!>Z_0EM[3ECX^;4,C-#7\ MUAM]RGII.T*18#D23(# %*HG]U1/QE!]LVN);2IG6WQQFN)S1_Y7UJ_K8M.0 M(1R+;#L()T9W./6T@")#&LR18(+W7F'&SWM?B2* M>+!V'YKE#J:4:2Z*=!98?VPG.BA:#D43*#256:EP>+S$L0_X3CLMBB:$:J-1(C<7C198W9=.] M1NRUM%6/EO:*Q[#F JJ\0-%RS]2.3H-$CV'$8#&5#:F7>&Q\OF?C9E.7Q6KY MWW:L7!?M+-<.DWE9+S\5^Q>]]A6PJ8M9S\H#54R@:-D!357E=+D1:E(,F%0Y MDB*'QZL!KFOF%%J<1*[> MA8EBB1<'?&3236Q-$.6)O@BA%;4Y01IG="4]&ZQX?KC]X?\(S8W!J@X(W M;]W1H8$X%$V@T%0B92SN31YSF\*#!N10M R*ED/1! I-W7658;[/A_FCWGQY M#%MNH6@9%"V'H@F?$ B27H'4EQJ!SVL$QVO2Y:P9V"SWB#5)?YWP3:6@71OB M4!?!B'*G7JB]RN44FC]))_J&.5$L26*O9TWRCW()1B83:&O2<%N9X:7G)[KC M4]Z\=0^&QMM0-(%"4XF4<;D_,OEAS)OS 8N/,GPB+8**,HAR1)1!H1%1!E6, MB3)\&2G[?*3\X"C#IX)",\K@S5MW=&C" !1-H-!4(F4X[4>/^?+E(_??IU"T M#(J60]$$"DUE78H$/C@I8>P.]<$NER/BFSI#JD]<&>^_-7=078"L0-^,*L-] M_PF2!H;V97PS&$_T[6?>3^M!"$TA@*()%)K*N!0P_%'Y!@_:A#Y *^FCQD S M=8[3P'.-1%2H,@%%$SU5Z$G)\J7DX&/V_P?'$[$#GA@O[5!) 8J60]$$"DW- M5Y:20O"XF0/!<.9 0 36>JC*>VF=C0P5!E!H*D-2/PB>+L<@('(,7'TQX_VQ M3C.'YAA T00*3656*A\!/L> A[0-'@)30HDF@9[6 [690]'$4 U4:H[.<0!R M#'@,:RZPISNPQSL(@26,7>WM20P64]F0RDGPJ#D&/+HU3U"9)2"T'?UU,X>: M% ,F58ZD*!*,SS'X^6;%*UH!E6-@K$-4CD&:3(SIB<@Q\*-8;T,"S?="7>:F MBB5NZO7-*%(^"!Z68S#<5E2.0>(%>FM!EC9"7-IY$OP]-S2/0-YIY/ZV/6D,E#RB:0*&I MC$O)(^0E#Z28%1+Y'SJOT-P/*%H.11,H-)57J9>$O%[R$"F+A[2>8DWM(?0] M_>4(:C.'HHFA&JC4'%UH,2R>#$I9/(8U%U")!(J6AZ;ZD>KO;V*@D,J$E$A" M7B+Y1AF+1[?F")HW$A*RB:?-QCG4I!@PJ7(D99IPI$PS)@,Q)#(WC&S-D-!O MJ&Q-HAR1K4FA$=F:5#$F6S.4ZD?/6W1(J:$#1! I- M)5(*&N'(HR M>5DY>^X$''F$.&%V="*XCQ,W,#HZE:"@GY2AP'QW8O1SPK%D MXOM]\X"4%$)>4NCKY\--9G&3#/TC]S%U MV @:X$/1,BA:#D43*#25=2D91&#)P/K"+N($AGYC%W$4(M+3S3.^(M8D0E4 MJI)1W#-I1C*ZCP82&IY2AXV(G7\]]8CWUWI80N-_*)I H:G,R_@_&HC_'TN' MY>U:3]-FB.WKV\E0BSD43?#^J]Q)@2#B!8(G46$C,Z+67XEX-ZT'*U0U@*() M%)I*^-&=EZ,NO7Q0$C4/;3T>B=2---!OU(/:S*%H8J@&*D52AHA&'3;YYF3K MB! 5C$0;WA?K@0=-'8&B"12:RJH43R)>//G69.O(O+%"3P.*B'LHC!4.JHI MT00*365(JB(1KXH@]Z35@W&LO]+@(%"V#HN50-!&;4LEIZO:) MY;$4".+Q:1-7Y;:=0%WF18'(3M!/UTYC(M,AB5W76&N@L3UA-703X]V+J$#; MBGUI5K&,QN.'I5<,-RF131#X$UW2Y,U;=W1H3 Y%$X,-HOX,=L6YNP2@095 68(".1T70R\O9'VR C(9(,B""#-V_; MT:%H.11-H-!4(F70G?B/^8Z60.]M@*)E4+0V MIIRX6\&\"1-J,X>BB:$:J!3)Z#\9E;[PS5NEB1FFG^KGQ'A7K,<=-$4!BB90 M:"JI4K-(>,T"N0^7$%&[KF'P[E@3"]4PH&@"A:82*Z6.9""QX0';<#RD]41* M'8TP?L\!:C.'HHFA&JC4'/T")T"/X#&LN8#J$5"T/*%^T8.('(:*J6Q(H2$9 M+S3+O6TS1Q7"+4L\NA)G,HFABH@,J>5$S248K) M(_]HNRFG^/IA;]Y/Z_$*E5.@: *%IC(NY93T\4Y\\-#60Y(X+V$LI5#Y!(HF M>/]5>J0HDO*B"%+M2JEK)/3[Z7A_K <>5"N!H@D4FLJLU%32@5\H>8#. Q6?44(6HC!K>,>L&-*T2&364;TQ&S43J(Y.1^1JV&343 M(BV#R*CAS=OV72A:#D43@PURQ]#9;E&6358TQ<7YMK@N?RWJZ^5FYZS*#^US M[O-NHZ5>7B_NOS35]L5)&XG_7C5-M=Y_7)3%O*R[ NW_?ZBJYNN7LQ;_MJH_ M[FU<_ ]02P,$% @ TIIC5:/F9%NE" WB8 !@ !X;"]W;W)K@R3 SB6NRMO<3M7.)#6> MN?U,0(ZY <0BG)?[]=<2Q&#TXLFNOR08M]I/=ZO[Z1:14_LA5KOE?W M-7R:[;2D6<%*D?$2U6Q],;GTSZYI)!##F(1;LFN=_9&FSN9C, M)RAEZWB;-U_Y\V^L,RB0^A*>"_47/7>RW@0E6]'PHEL,"(JL;/_'+YTC!@M MCWD![A;@\0)J64"Z!409VB)39MW$3;P\K_DSJJ4T:),7RC=J-5B3E3*,JZ:& M;S-8URRO[[[8$^\[+9 M"'1;IBS=7S\#*W:FX#=3KK!3X8I5'Q#Q?D78P]B Y]J]_"YI/B#/5\M]!QRR M\RQ1^HC-L['8H#6DB4#KFA<(,J^.FZQ\;+=NUF1,G)GEM.YA\GY[&EHAD$J"G"TD]K#%^SP!?KSX0V.&=XC*=MS7[AS7^@, M[PT#I4D6M^6X3%%<\+K)_J=NF"QOU06#(/H$4V\4:H,4#J.Y.=31#FMT .N: MU;4*E0IK$[\P\:N,J0EHI$&84M_W1T -4B2@U QTO@,Z=P(]^7&>ZXC":(3:($,L>;3885XX,=_+A%"\#FT% M2OGVH5EO<\B#A&\AMTQ(%QH*3,8;09>96X#Z7L]VGA/JJN')CZGD_13!1H!F M2%BW:Z=J"" ,<3A":9#R*:$+"](!+_M.I)=)4K-=:JWCK$9/<;YE*!Y4+=@0 M4+-DU8&/\E) 8:KM%ODZUC!8C"W2I>:A9[$']_9@-QUN8D I9-,P*)5",#!# M6IAG\4.6J[*I\E)M]O4:NKV./Q^V E1"6L0)Y(#(I)'F"MLA.5*)/9:V?;_U M783OI&BY#U0627IBV5/\D#.CS<2P6;U@'%I=:NK/%]@2W)[H?3?37\,FK('W MNH : 5+#3P(;ZG_?L_UOI,+EW?-AM4#)YI!!GJ"^('F15V*1*$% M8,^FOIM.[VM6Q5F*V(NL2JS-"JY0)UO@KM+I79TU<:"YUB#D#?;(/O">6GTW MM[:>=6#3B=)?S,=L:I":TB"P5?R>3WTWH>[RIXI?K)-<%%EI MJ2=0W\V@LMAOV5X1-.+4*=$/H.<8P]3%@@A;-BCNN1.[N7.7Y =08IT1P9M: MHAO$?,^WH>QY$[MY4QU$3/EZ"IVY8U-BG>2FF(X#;I+RJ25C<,^%V,D9:C#2 M1@G3 &%$CC5,-/#& Y-!"K:J;Z%QW-,1?M]4FY5/3/S,V(./.M8>2]N^%WJ^ MPVZ^N]_6R0::R+V.O&UC&-S>\!PFC4)&EZE&S>@0 ]&%BW#ESCHKXS+YF=1Q\N^[4^=(VO:]T/,Q=O/Q M??S:S2[ENV87;.)>#WL:K9B&X-"WU>R>HO&!(7> N^0-?U893V3>IIG;AI_8K7L 8VBT#;$O8) M:EA=H)S')Q&7KLQLE2%#(;G-#-6,:)S.G3!WOCTP8WG+Z8)Z5L$XFX1 MOL(PT&VXOVNOH1-81(%F[R&Q?4,&I^#N^?6^SJ#(57&.JD$&M;6/M71I+-;$ M,*K.\3B#3%*4VD#W_$X.\/L^.V%UD@ES(NE*@HY#FB,J'=2:RHS>NMEJCPV5EYB&'<]K9TW2.$P ML.5]3_W$3?V*-!7K-USNH/;D%NU,>JQC2W]%##2^".9CV 8IXONVQ,W>Q_HQ$PMC=%2 M$YGC<6B,T[9'+*TOZ:FRY5R]J#3E+67IW*HTEEFPR2NI#=\!-DDFV' M&>@;4VT4,XJ1T+-4*=K3/#TPD-O HKA!#^PQ*TL9"J@",%IF/#790 U3N(_Q M^'3&((;GU'9V1'M:IVY:=YK Y &8$[SAI'KNCU/<($7G5N@]0],#!]IJ@):F28C#=R@=!/SLTTJ,^9SZ6MGT_]5T =7B MR=LDC38L?63JP9@:'/M'1Q!QHU=TNB=:O3#(4&()==\04'=#<-L?$\GG5_)9 M=-N.'6Z%.\W#MQ^P3[0]JDLMM)/IV>!-H8+5C^H%*H'4$7G[ILWN[NXEK4OU M:M+H_I5_=MV^:M6K:=_\^AS7P#P"[%F#2N]#!(ZLVY>IV@\-K]3[2 ^\:7BA M+C/ * "; M' & 'AL+W=OD[+J__IX94K*<.&WV/KXDMD0. MYW'FS S]9./\YU K%<77QMCP=%3'N'IT=!2*6C4R3-Q*6;RIG&]DQ%>_/ HK MKV3)FQIS-#L^_NVHD=J.3I_PLTM_^L2UT6BK+KT(;=-(OWVFC-L\'4U'W8-W M>EE'>G!T^F0EE^I*Q0^K2X]O1[V44C?*!NVL\*IZ.II/'SV[3^MYP3^UVH3! M9T&6+)S[3%_.RZ>C8U)(&55$DB#Q;ZW.E#$D"&I\R3)'_9&TW]DY$HVA!=DS=# M@T;;]%]^S7X8;'AX?,N&6=XP8[W30:SE2?_%^.3[/N'95,R/0HK6:BG(V1+4'ZM1J<__S3] M[?CQ=S2_WVM^_WO2_TO-ORO[L.;3B;CSF>*3^*B-*:45K[QK5V-Q;HN)^.7G MGQ[.9L>/\SO^-GTLG!>Q5B*_/'/-2MIM?OFKT$%(L?)NK4OEA:OHBVC$MJ6R"V_'?.^ M5;LPNA @(5M@F9!12&.$46ME AVZ=&OE+;@H3L0\@(R":SU)I]W:5EY"6%O$ M%F]$"[3[I2-MH$KKVB"*6MJE&K.AV4)1*[."<+^45G^31%%)'-9HC\U-TUK6 M6JBU,VN57\( )1;;[!,R51)E*.'I"%)VYY/>"2!OH2RTVHK@3+L[;&?8-3,F MXGV-V"UK[%L"(,KC*/*?6WK9@($LO$7[\,S!>5LAR[4.KG-I<%7<2)^T+L%, M>UN&?BA5T,NL3JD,S/.(FD=X5#DF/P"$-56!-1RHK74(('_FR,$+R@Z,0KAU MPT^%JBJ-<-H"*B$NP$#ZS.I!/"J67! RMA#;N>=F0,D3O;:$R^GOCX-8>"=Q MO/.Q@OF._-Y[&Q73 V0!<8DU1,>-$Q4. [@0%*]H5\+HDMP1'HE?IK^")'L% M?IG1U][M_.RLQW922-NH?"4[$(8M;2>T+%3<*/@$/@ZJ/T-0+. 9'"T1;%3% M])CPX(8,"NA:(C#5%\%+Z*,[/P391->+A6+QUR/3I6%P,1H5R*I+2>OXT")EUZ7?[ENBL]9ZL/@=Y0#,H<49]P[WI'QSH MPGDT4FL-/N_[LVY!WX.!=DK54(-$>E<5,PX":#2BS=23!D)AU9+)'Q2D^3Q5 M'JPN;L>_V7H24NUGVG'7TE$318)<%CH4";XP"Z493Q(-&V*+3N=KY"XCR[XF M%W1Z;L69-!J&6"WYF+<8'S]A?$RM"4>809UR?:]M0V[7O8\-]2_4DB'. /1? M> K\P\N:4X[#/2;< T3HC42HVUBZ#;+*EY3\&T5E&:A7U'9D&F3CAV5O53-] M>W6/AG'8E+-C 7_;M&_+N\;[VW*I(?RWJ/O:Y%: >NH$J81*9,DR$RCE=Q[J%\R$D> Z[L&LLIM_Y\NB#D2$Z$#DX)T(M,# M]/B(&'B6>@F#? _//^?//U[VV"3EF^0\$H=^RY<=MY*4''Q2C&41-1^"I)$# MY= =KA*_E\A60*OS"4-'EJ4F\(Y[^P\B-Y4"ZZRZKA6W%6IIVU^(X'.@'[-J&Y*1KS'Z0S%%5A'%V><\D8"?"[!@$ MN4.==*;0JW;1F>%\>G3!1[_3X?-^"X5RV$BOD3)\Y<00&(QF-.X4>B4'')Z, MN#:=3<15S31(+Q45>CF ,#X:YNN!_\9H0)LN"F#+OOG,?$I4[#7OIDY78VR@ M'GG1EDMX.=34Y"/50P_:(I,J!YP47:BMX_*UEUBTM%$R\%084>TLESW8MZ0J MDQB_5UQQ[1ATI#D-A^Q[! 6Z(C+0ZT9"EVT!%RA$QO%.NOH"1JB?0,$@R-X1 MEU3(=S,B8.)NQ".!EU#F-1-BXU"@-,/X=FZ'G.N\/,[A63FB;\)DCD"I:)#K MRU\V%&#&."*W5)O;U%[RF/LU-U/7K-@K&BL7X@H>Z&<@"_[?;2 C0>_< 13I ML@&P>PD.!>2 5.R^U7==;GCNSGB.US$#$=# U\=..Z]C8K$#%2Y:.*E-=Q<)=XC-&VXWBM0?9& "T31\SR( MY\D9FMUBTX J[J99:+EO&V[L4[26ODG[0$ZYLX*#"L6Q',RKE#=P'D%](>UG MWZXB7;[<9)Z.I/HC AH#ZCW&A\VYDPF$ H(UL2[F,W)VU9J*)J[NWBK)H*[5 M@2>66>^ _Z%BX50!NF&Q"W(GMY;K1(Q=5<,!Z0H_]9EW4I+ZG=H1O,E+>ZE] M>S3O)+G+ZK]E^QBJWZ NN0<#;0O/D>8Y*L1=J>D<-$1UY G-_:4R5Q6R#?NE MBXF14R$5&135;WW-SP4D7U3F":*3E[HWNFAJ^)[TYMB09_CK#MQU$G!#RN-\ M0Y%&%X@8P)AG]%)1E\7TM:..*D> 1EM4U(5+]TJ%:=,- K<$W2+N@@_A:(A/ MYU5!W1TOU=BD&_#-E)4D' M8C 1AWYM.!K\8(1&:,D_BW%]M3']=M0_[7]YFZ3W!R/XE'\*2U^B6_'/3PL7T77Q1W@1R*,%>%\Y1#I_H0/ZWR-/_PU02P,$ M% @ TIIC56Q\2(+/! IPL !@ !X;"]W;W)KL[TA M^?$MG2J2\Z/YU?3J]A[&T^G=P^W]]>T7F,WO;NE[>G5#!XM!TY,6OMN4->*D M0FR_@O@;W!CM4P=7.L'D4+Y)['84VUN*D_9)P 46#>C$9]".V^T3>)V=R9V MU_D?3:X0N\<1N7 N72$D#B.J#(?V$:/1VS>MCW'_!-_NCF_W%/HO\3V-V&[ M?X'"6$I3:J_T&F;6:/J62,7H'ONFUVW%_CBNT2+ P%YY^D%L,O+LWA9+0Z_;> M7\)*2)4I+T(!FU6 OEJMJ*(=+X\CT-7/2@LME MS\ ;D%0+EEH/Y"91*R5%)<#R*29KOF\QJW9353@R47CN=K5AWZXG=W-@>&W( M>KMW9-EFYB0Y"*1KB9 HQQJ59LA;1[0B![B0$QA)Y.0)$(59H/YO1_C4^O2WR^(;5T]SHC M0;&"VJ4':8A/JB*V5=7GH)Z!3(5>4];4.J55GHAE0'SS0.UHV$F.0Y6P!X[& M:L>0TH"V'#TZ6Q4)GE/8U%H?\%/:>5MRQ9YM0YN 1.OIH0ZLT"H!PB+DZ!M< MP[\+,M$^1-D)BQ%%=U>\+ANN-#J M6+.Q^SG,QP4Y6E'@R7)R_6OY3.42)H.=2WZBRCY2)D@^OT15:9T*HBAHN@FYF8$B M8A0A4N^/\)P:FB\T>X>^G,FH/['I+ZU_0>]&]60U0K+&G:.O<7-O>,K1KL.( M2(:QKZLY:K>[FT+'U?#U@?4$L#!!0 ( -*:8U6>CA<5K10 (5 M 8 >&PO=V]R:W-H965T&ULM5QID]LVTOXKK-FM+;M* MHSGL'!L?5;;CU.9#LBD[SGZ&2$A"3!(,0JTJ7M345[?7UU]?-ZMO>O+FXN MPH,/9K=VNF/>OC4_=+CTU7_TO[^WQ%^Y6V=OS?XE[> MO7EV492C&VSC%X."QK3RKWKP?,@6?'N]L.#6+[AENN4@IO)[-:C7+WM[7_3T M-G:C/_BJO!K$F9:$\G'H\:W!NN'UA_>_O?_YT_N/+Z\&[$;/KDJ_\JVLO%U8 M^<_B)]L.>U>\;RM=3==?@8I(RFT@Y>WMV0T_ZFY=/+M>%;?7M[=G]GL6K_:, M]WOV%ZXF*Y^?7DF&\)WK5*E?74#3G>[O],7K?_SMYNOK%V?H>A[I>GYN][-T MG5_Y;%V$Q<6O>UV\LTVGVD.AVT'WKC#M8(L20NFAZPZ*-.P+@S_*VN -5PQ[ M-?#WL-7B3O7&CGAXZ+0K[+;H>E.:=H=_[9TAFW,K[%C68T5/M^9!5_R.7A4# MS/)2M=4EK$+W1M5X%1^+L37#)=E(E>VRGI#:Z]+N6O-_.+/7=[H=-=$-XRQM M7ZFVU$+VFX^?H 8WSR^O_[DJ/LB+Q;:W#3::W.\=FXCN5[A89;8&1RN'Y>^* M7VUGRN+KZZ^9M $T]+H&O7@!3J5JF"5/8#_L(.YT?2C^\;=O;V^O7]!JK.-/ M-R^>KHLW#DZKW*]XEW 34V$'.M$5*G)=B%+>F>/2G=U&YJLU/D MG)@']'789P7/ M;"X/TZ/&V=$D_FI:#JVI:XT,(+!91!JW*_<.3\1.;2*>G< M[W5;/+$]^/ITP@"'?9R__^DS1/1;L-C>DQ(-:E.3&+;$8%GMU; MO-#97MYU>B>""C*,ZIKTG-6:;]I81PK>-+:MIU8!XL*-BIUN=0_Z0!#'!#/@ M#FL6_O6S%\5'.3(J6O$KCHPZ^$$XQ!S\20][6\6%OQY9Q:E'[W'X[E!\2J:2 M_1EIL-OA7O6ZJ"'(UNE3[_R0+++X1?=X;T 4O;3;2W"@JS63^&=IVT'A\(%8 M X:#!0[1C3Z>I_=/T1)8:44![Q2$UJC?;6^& TGVE%HD:1N7M+0J[)WNV1T5 M&UVJ$9SR&] "TX[LX<@RMG@O: V"+%2"W_)FNLZ)RES=\KEML.;3=VU$-81+ MHG U5-(O(^VS1$YEL">IK*,3VG+L>UU=#O:R@DS8@!TNQTYKL(.JIPO8FX6_J&N?@G3]&W("/];1H\AZ]_1W76A<_(A)4%5O7ZHO( M-^)\R>+#(] =++W/C-6[N[EBF;:"#O2'=?$3\6U!_194HKVS]1U=8 _L!X^] MZS4KH!LWX2TLRQ=[II!QD7D+SSCVN#U] 2JKD=5#&-#KS:& ]Q2;9-TQ[C,[ MP-8.Q#APB'R=Z$EXR;,M\GBBW\?1>QZ\E[1>B4ZQ6N";I!DG(CB]Z#I=(O25 MI/#:^W $-9<;*9WS.$0@_WV"[D2H$#YVWL+P;(2Y[.W8)\,BUK)K\Q&&T0YV MLE7A@5$OZ\!01;+T&PKU>)/W$^'5SGIT) FJ!P6XV_3;' P1["I;2^3L"[> M>H'R$S\ M#?XNB0=$S.D-646=GM&1W%VF.B.2A/Y+3)J '%(^-Y#^LB:=-+YU@:3LI,Y. M45JF3!.T(]N!U;0%*Z0B'8*NPJ:J,> H_I/T/K"(^<77.'X-[*MT#7.>"#J( M-Z)8@E*-'2,BWZL["E_8=P,WB:6;<6#KUJIO=27;(GYA5X'9A$7CHUQX?7@& MX:FD'D 1"ELSS@E^D)2 .41$XL6*8 9ST=G:5!QR-JIF>^;LO]#VV# MZ^(DQ\ -LF0T&*\/;G@4?CB'P3/,S:\1MB!S/D;6[(TF:#U@\64H?O;@"?;V MN5^;TK*$2/.D'?= ()4 M;5L"X'4M62'=8W,0'=-MNI0 D^,[UY"'[ :_X7V:W9#H!=DOG,&V:"GT%3MK M*WSLD[Z \L8X"3C' 62N>;EI(&\PY=PI,:"9 AGF=T"))H%';U5\**?3J\ \ MMD[3IO!X8L.TK"BAK(132>0;>,HMN,]VP\A+"%^XSL2_;#34(>6TR:1Z+^O$.+(VO$'*;4N]RWQ"4+K*#Z1VY(#3ANP#X'$ M)M.&M,&OS=_RS#JK7'P];X !.E/=CK!;!Y(;K=S8L].>Q742#&MA@LORAK__ MJ80!%W<2ZJ,<10);?0*>V)EO$.!U$FAZ&$H^8B$F:0J>;&Q0#M9TRGKQ?D,2 M3<$4D'"L2=*$XS:B8H0]X!L1/;2< :5C5E(\GV7SI(3H"$Z1&O65Q]/%#I;>)G0XP5B,D2KME9\1Q"/L*LPV M:"ZY4!9=2(SI.1(A/YA55UN#@\J)N='M%%\:&NM9"P)[-U6IDJ-25%2WL5W#Z(0\Q-#[#&6.L[,H_92IW9QT*8^Z-V)"1#@'P1ZJ M'R2=FGE,R=AF[8G'3ICJZW]9\1Y=J(]L(-$>.,4H"&5CQRK5 M.G:9_@QOW%IJU/G6\?BGQ3UTA,-!*$1PQE:*15+):B*SRFH7:E7D@KQ5+W"2 M=#47!*7D7@D@"VH;!WPU.E^D"%(\ARO9E$-E@RHR15>/%&2PXXZ"K<^)5IX1 M":V&:Q#8QA47NA:3O=E:)24[Q!+ *7WTB(1KGI+$$AD@FJ[C*0O^?(ECT\@5 MP^23OO[KEAF+Z',*Z4*J*9Q>V1M=[B7J/S40\%SLU8Y0@]1J?MB4ZOV M,S *WZ:)I:W4*)PH'GL;,LR"X""E&;56H:(?C@*UGL)49^62(K$FY-N^A.%* MI"M1IIZLY*[>S\Z;Y,M'V8%*+(KA,,=RV48P3@!$X_:>=MUBCU)+&Y#F)42( M1[603AV825PM7A>?F#>Q!D2M:U];%9F*.>5Y1 QE')Q"[A;<_W'DH$-3#23M MU*@JE7L6SHU0,W#]5*\6-@"GQ.SC2A61$O(S6'X>BQ:.,<['=$4IDH^FYTO& M&?A>HIV\#L,4QO -]]"#?7D,),I#/BU@2D%O/!9 J\:6'=>=CID.2Y\13-3O MLE:&9/G;XNWFOF>QC*8?N#@LJ24.WO!^XL,F:0.!M!XNC/W*B) IT&^6M5-9 M@!M4Y"9L68Y]*MJ,K62]!0;7""M:.I&I9,K4U'I'%91@H8R=5R?5*G.,*]\- MJ7&V3(C1H4^0F ^V)P<"($HU&H\\0A35U5.?3!&CE+,M^ .WRE3BS GA85U M\?T8GX$GO@H4>U%Y6W&CL[X4E6/.M/7.@L[04A/^"_S/B*I[)]XH># MWK]Y-QD,"OG.L!=G1!2O3E&:&TB;A< M,_+PQF?-(*[I$BLG*J"XWPCGL[%][)S=D4*R^Q"SSSR.MZ),8]G.9^8=WG7# MT3:T+!M..VJ@3'KTMO>P@PMT^2[\$((![5BR'44D==M'1TA?; MVJKZ'2L;7YW*'+FO ]HV2_=2YS0+824-:P 4^VPH0"16PM!'Y:H>SBXC,$GG M%M*VG!0=P5T>.YD6S$UL/U&??+8+1>TPWY:U.+.2)J4P(SOLD MG-=:)3*;' MIEQ=CLN<"M>A*-83"*86R\1J)]M/?!]5.$L_B% 0Y(??8:[7UKE0'THMO3-= MY.U(4"Y6*QR"QF(LVTK,H# M!#IO$L4L^2A?DMKJ0>HF*5Q0&#=(\;.JHHA.2_#F&MK)ZT?H='S%">OC8KN( M"[W3FW,]:[7%*+---:U3Q0QP,7:3):B8[ 14#WQ>B;OX#Z$"@7O M]#PL$V8M4DAZ*L6B4TZ1JT;3>N-)%<6) M[IC$7J>:V"52C[3CHUN76LKIULTLJ\KY,*NNBN(**3QCLF1\)VL 4[\39Z,D M[R.N0FH5A]IIZ)4* $G?[PR5T4:&!-BF,NESOR JE!3;V&]-TY;(7SJ;IYIB M':*B&88CNTV=.>?G\F).(LX]$!.S39P@#0NBASOR8 ]C1BO;$G>,4GI3+/>S. M9NBF^]/,V-[ [,)\36- ^F!;Z5)TO;[T\W(!7[I(D@M5P583- 8VJBDJ]>(C M)),^D9"G^/_8".CI>4^DC/FH;(X*PMM^SLP7EHDL%@0,W)?1^'/LQ)'X6_+] M<41"(;$Q'AK?JYV.\UQ.QKGB?()$[];_$&ER90'#OD5'4G!?0'D^?9@/HI&Z MM%R3G)C8=-Y*0&IX=5+Z_=]0JQ_\C,A_Q=J0J' ^W7_6 BYXG);+6V7(W?<\ MOW;(+\LHD1O8'2FP#%%#WMDO 0*Q@K:/D<*Z^"@>T7GCSOVJ;[6(NZJHT$AE M.HY)@<_(%:.7IKG+3AUZ2\-EZH'DM;'M&$;E-#3<'K2.XT%R**,)K,BFWQR) MJ?XKY"R- :;A/WC,(34?N9NI]_1CO#L^C.K?,-&2^!KZ[[1591A;_ O;_5N0*]^/MN"N;$T-YBT5\Q[=08K\,52[T*W-8Z;? MCU75G6.\3YTGM< @BT<)X1"7G/V/F:SG%2E1SH4I9%*AX];6WL,,FBQG;)Y/ M:VVAA_<3$XVV%%-8'=<*/NU!,)+JA?#(0/R_.NFBML+P ;')D04,TJN^-W"I"<9KI M9V0L"*R6LE)*+V-#H++C9D BF&!3%CY5*&$1S9!%7LP)89Y?^V-$/L 3_!ZS M9K65[!=@9!;WA+C=PMFAN!8[02'A3,84SIWV^3= MB+M;JC=)RQ2.^C(>$PECNL3;AH.2MK$AI4TY2XY1,IOY\_6=@+'BX$9>0N[H MYT)D.A!=.^M_QOPEU9\ILT@7)8M2X@9SE1.^+.LC,9N* 6!WZ%OIAF?G,P&M M^2=HU,*7 ITZL5E'VF='1\.-V9X33.H'_VF-E&ZHRP'56TU"24+)8!\%VE[[ M6087Y4P&G-ZLY$Q.#^\!T%N1D0NCOWZR_(9A= MAVKNWY^OOPH/5F$ DW\Z%'^Z>.JWR5?93\,;#5VF'\!SFZ =Y%?B\6G\C?T; M^6EY>EU^H/\33R0X^,0MEEZOO_GJ0BHZX<-@._ZA^<8.@VWXS[V&O^SI!7R_ MM7 !_@,=$/_/ Z__'U!+ P04 " #2FF-5]7KQP0L' "Q%P &0 'AL M+W=O#J??Z+,3]=L-?G"UU9T[P)#,IO^#B*CL9N"@0*UAJD *% MX1L[9T6!A$",KVN:@RU+1.S.-]3?V+/#6694LW-9_,TSDY\,)@.2L3FM"_-) M+O]DZ_-$2"^5A;9?LFSV!K YK;61Y1H9)"BY:$9ZM]9#!V'B/H+@KQ%\*W?# MR$IY00T]/59R213N!FHXL4>UV" <%VB4&Z/@+P<\7[RP^WTW?D MS=6'Z8?S*YC=W$YO+91<3&^GQR,#K!!AE*[)GC5D_4?()N2]%";7Y%)D++N/ M/P(1MW+Z&SG/_+T$;U@U)('K$-_U_3WT@NVY TLO^-7G;LB&_60QA%[KBJ;L M9 QHIGZQ@:G+_[P8O=HC]#A5NAP'_4?%WH_V7!(GD693--4UL)H\HFEC'^C MLX*1-TJ6Q$"<$B/MZ! N2"J%6,?=DINA",091;;1#3,[(N2PK M*E8$ K70Q"B:,0C5-1_5\D$RD%00)&NE&W8Y5QFIJ#(K4M4JS2$\E4;^[ X6 M8L$(I"V24IT/R45M^2-/ 0H@9>.@#!V4@'L95LZ8VOK8?>DRGA$AC962(.!1 M09]@]!'T@&P\R\5[H -99'M40$6V7@(A/!2IE$P9RS21Z@?FAVB']0!O",# $9SH MSZB!Q9P+*E)."Z(- M *R##,GEUYI7.+>2O&-@WQPEO2KAY-^:7586-SCZ9>-]7]A +T!9#=!K@>@H MUHX[1%[:X\I:@^#ZD+RIE>"F5HT1Y_P.YZWH!R1TW#BZOQZ[UC%J TQSJK(E M7:-K.3=VL=D>!(X[:;']V G]J*,NWJYJ&ZK OK.!F#1 N.8S;^2DNI#/^W 6S-X8^=(/$/.P#@'X2' M#URLZ-69]?".<2!NO7#< 7BQ,XY:P)5(BQJCA6/;\5Q9N=X-/@#$6P $^3V$ M=6A!<#;D(2.V:LY1Z[U6Q)3XW"S86% B#9V"75:,JG7B O^MF.VIBM403:)J M(/&.4_ !;CC[?P3F1FY=SR ?08+$.@6I29MN= :A$_MAU^"),_;'Q.:_3EBX M7AM1/KA$$\%@I-;D%5TI"47$T#O6#<9X''=0_3#N,CT$1'?BYTK:PK;7#C M2:OA"!1R:Z.7KFD5/"ME-D27/Z7^\_WCKV>-_ M70F7@JG%JNOZ?N($XVZMLK[B'^V%;+ NQ0+2#FM:00B'/)8=(K M59?P4_ ^&B ,V,2[%\_/.L(#K"MAH,7DV#Y-M6:_H1/YW6-/ON_U_=Y$^KWC M6R5UJZ)N"7_^CFE?;0<@M+/W__7!KL'K9+8CUX/XZH*QVF'SQB'2V.\/M>\= MSVCZI9!MX!Q \D_"\-YZ,O;W_O<[-O?@ G&+5P1!RS;%>Y&3>*WY/=<)$_^Q MOQ-([6/B#]OT\&H[BX'\!RE>V9)B6.AG5H<#MT>@2* 7C#H M7V2%W1-+O!0E3T[?E!]J)MGJ-"V8OCV,6.;ZP?#FX7A!8'+ M*1Y&$FA0AVWM^)F7%K@@%: 4#M=&>_T)NMXT;=9Y1(2P7 M]K%8$_M:TKRH;J';]^AI\PS;;F\>L]]3!7V.ABO7'%#=X3@:$-4\$#<+(RO[ M*#N3!G* G>8,4J_"#?!_+J79+)#!]I7^]#]02P,$% @ TIIC5?US.!]> M! 50L !D !X;"]W;W)K&ULK59M;]LX#/XK MA <,&U#DQ6F[KDT"I&^X#&M7M%WOLV+3MC!9\DERT]VO/U)V4R=K?8?#OMB2 M33YZ^(BD-%T;^\,5B!Z>2J7=+"J\KXZ'0Y<46 HW,!5J^I,96PI/4YL/7651 MI,&I5,-X-#H/]S*O/#\ M83B?5B+'._3?JQM+L^$&)94E:B>-!HO9+%J,CT_WV3X8/$AH5(,1#3^:C&CS9+LV!T_HU^&V"F6E7!X9M2?,O7% M+#J*(,5,U,K?FO4?V,9SP'B)42X\8=W83B81)+7SIFR=B4$I=?,63ZT.'8>C MT1L.<>L0!][-0H'EN?!B/K5F#9:M"8T'(=3@3>2DYDVY\Y;^2O+S\_.+V^7# MXG[Y< &7R^O%]=ER\166UW?WM]^O+J[O[Z9#3ZNP[3!I$4\;Q/@-Q,]P9;0O M'%SH%--M_R&QVU",GRF>QKV =U@-8#+:@W@4QSUXDTW(DX W^8TA-XC[KR-R MX1R[2B0XBZ@R'-I'C.;OWXT/1R<]?/*VX,5'JDFK'P47&R04"98*CS'( 6F M.>[8XE-E7$USH J59/?3EP DSJ'RIK MATQ(2T&K&G\E8U.2N! Z)VC90+^8PPY+0!#1%#G-Q',%FP? F!Q"]H MI4)0-"M$W16)(DJ$*R"CYMQL4%B*=Z*7N.,@ZY(%I;\F:,)!6RRX80?=:$XL MF=9'$#KMX*9D0VY;*SA/KT9FBF ;JP5I(7GQ$"U'S>&S[CM1!(T$]_T!?-/P M1>B:CAR8C+F+C#]OYS*&E&2"E*5B-YW=6E0@&0:C=O-]OOT9:P@*^&V'T0G)\9E31M"Q^J+.RU(:3# ;!'/#J! M<9^G7S@Y&E@=:+J-.P4YY^M:=BMOS:"-["WD M5X7MI!"_I,6:OOY6D?:"2D(I$*6I6;6@&+411;U*9I+]N*7_Q[HE1IL 22)F M09*%VJ3SF!9=D>?SH;Q=3H5(J1=W>^@+X6XWI=VJ%!V:3=:.)B>[[]?.SF'G MJE.BS<.%CI6BF)M;S^;KYLZX:*Y*+^;-A?-*V)Q[I\*,7$>#3P<1V.82UTR\ MJ<+%:64\765#@ ?C8 !D !X;"]W;W)K&UL[5M;<]LV M%OXK&#?MV#.,+,F6[327&5_BK7>2.&.GN\\0"4EH>%$ THK[Z_<[![R %*4H M2;OM0U]LB@0.#L[E.Q>0+U:9^6@72N7B(L^7/Q\>VG"A$FD'V5*E M>#++3")S_#3S0[LT2D8\*8D/Q\/AR6$B=;KWZ@7?>V]>OF^$+9)$ MFL<+%6>KEWNCO>K&G9XO*8QO. _VBULMZUH)U,L^PC_;B)7NX-B2$5JS G"A+_'M2EBF,B!#8^ ME33WZB5IHG]=4;_FO6,O4VG591;_5T?YXN7>V9Z(U$P6<7Z7K7Y1Y7XF1"_, M8LM_Q9:4D\%!HE/W7WXNY>!-.!MNF# N)XR9;[<0;EKZY>7WP0MQ=O;OYU_N'F]MW]B\,< M5.G985A2N' 4QALH/!-OLS1?6/$ZC534GG\(;FJ6QA5+%^.M!._5,;VC[]BBHW#<3X$[E*%ZN0?+M\H\J+U7/_TP.AD^W\+? M<Y?&A7I7%S+4,ZOWF- M*Q7+1Q6)*R-7CO$6V]7_XU%P.AFN"^W8;2%?0*H1F8&<&Z6 I+E=&SPY.UHG M$(Q.1N)#ELO8S>\.& V?!6='ZQ-'PQ%/O;&V8',*,XLUL4=')](VS(H^-O:/ M1Z.#];N3L],#<5],<^:ECXUCST":^\-@$PD,U$G*7S MISF)M;6[T228C(;^S^'1"23?&ER1:2SFV5'P;#3V;IR!SM%9?:-M)AK>=9N* M?Q>I$N,3PKC1LP 6K,1EEBQE^LC2"I7)$5")60UIV6)J=:2EH=G8C ))H=,\ MPV!Q#L4">'G>G8)%Y?A1+GI>*5[L2^BA'#E]Y 6OM;&YFTY# A'Q5 S$LN?% M',&'A."Q>*_"#*MLF/(N>W">W-K6AX4V&Z>\E8]N]'CH1E]GA/3] V 4A*>PC'#($$6+/ MH:*&Z>G4YCHO'&2"]Y@D:9QI7[R]%;](8[05%S+]&(AW@_.!V"\7Q--JC8!F MR@A17-O<2$I'X)I@8@ IJ76=+4WVH".H'+D7@.X [#V!;0^&2 3BF*S0*I@W M]LOV&1-&['M[]2"O86%?@U"Q%#">)Q.?%LPM*G$G(MQ9HVU;Q/LQRMLJ)(.U M'->3/J9-C:2AV_FL0E)_G8UX6RY%"P4 FICSO <5/SI5LNUYF%]93#_??3;2 M>&RS*R5A5\@%"\-QM.7(X^-2C\Z1&>9/G]N>:)OW:5L:)>:%-!+^[9R47)_S M#7H*]F<%UE4BRA*XN0Y;L!"X7<0 B/6(LK3D0+PW&O8#??HJ]&O<+P2TX#K'-G5:93&.%%WE M"YFW"%(UPB0D^XT+'[%Z4 ;^)LCULM8FWE2/[NA1LP6D]TBU6 HTVDV$/!S! M6<%PRG$!6SB/?@-DXL;KBYL/5^<,N14!SE+6Q8$E0.UD@' - B/^OS!9,5^T M# MR/QV<3M;&-)G4>-(,G/00DRDLZU&,*OP\&8S7R3DMCZLQQ_UL04MC'X:/ M^DC=AGE&?)4+5MZ'LG$&/*G X0 J_@SIA MIYHJU["NHLK#+R[M=%=/504PI MP*]IF=XB+LJE)M6]_HRJ%JJ /]F=%$4[O&9F+YG9W6:Q>M,L=WS 3%.(:5Q+ ME:S904J(%!M(RZQ_@JH@I/@Q*-U81$5IYDHL%;P94&"RQ(^> )8,[E&KJN%ZU&@(QJ- GF^4U:[>+*+$0X@0B<*&9-1?84X:(R<@]*< M,B*94/).)@U",%GG2LIWI41&JLHOJZT[P9$7D#F#T2>G3380["0I3Q!*FO1I M5B [DH^NI-$S$&%8F6M.%-1LAER S,D6\*WNC%:Z74?I6$.L$64?JTK1C=,^ MF7CY2V:VRF6=P3ZA[*R$DIT>T2&R%X8*K7Q3< ]VH@]YJ\^Y*PU8VBT4X2(C M\L(ND<0>0<+0EBF^NL#AL'[<@#N-C"6JB A 15$3OV+2"]YDTU=O@(B^OC MWER!$H^FTIKTA?=V"Z=*%WJ(M;H[U;@>@JY@*P>-MR06/G?C3EJ!XN;B0% ) MC(S;+BHA;8@CH*CL(HNC7A3MAA2NP3C54"3!R!D_W=BN6/!T>4"3\-3Q@XS^ M06=% W)DT;O#09;VPI> M$2)G9 8KC2Q*AEQA]#*#*B.A"C3/PH_MY"N@:NJW,FQ4!0@!@RZ[IXQJKS=Y M8!,"UN'_"^Y(RFJ$O-V:'#[[08#K^%$KH)9M@VBM+-H8ZR@VM^/=R"_8OR:X M;DDVOMIS_I#L(T'L\7./T<2/H%63CO+%,,Q,Q&W+&M_7 ZK7J-U2RV.4H@8= MD GA3^;,:84%U0KW'&+RE![,H**;FBMI]1^$K=0 M$!78/**JH=[<7-S>==H87_8X7K?/@+)E7N=NK1)F&1<_.A GRY8$9#ALC2Y9NN>'HB)43UQW#N1]]]"OTBQ MX;@N#NVQ'42?UVX4.#]R%,)^?X&W#']L=7]RA?-=(JH7=$[ 0U'!P/?R0P KFT2+XD$*=L M<&VKYUBEY978=*R :X9;1F5/+_,..1J'V;BU?H[/CDN;.#D[\UCN(GAK!ZAD MV5\8I1Q?'EL:9D.$^%2;7#XS7KMI;7@E\+9(&OCH;=^ZE%G9\AB7^B^83A$! MA,N#8Z;,IH)80S&G HAF#D&(T=S;;/I@7CY."7@]AD)IJ1Z,X*./D%O9LD9E M01@\1?A)R7QY_>890,=1@/5#/*003N6["S0Q3/I1G*@Y_G7Z@"DN #:M8&Y/ MRIJ*M%;EPLJ8^I>),O.JI>X3'8AK F%*[WJQEFG:7I@J8Q*W\LO>J2:?3J/R M4(KZ\'I:-,ROE^'M<#*@TZANFM T6W>-#[0(:]U+.F"'D-)L#0$VUQF3IIL"B1U&A92-F,+ MPP[ QTX()BI)64%D 10QD9I%I/^R$>V>T>"5-%1E/7HTZBDHPV29X'A/,R _ M]49H'R[H8,&TK.E<,ZAK3/OJ@,5+!WG2+L0LSE:-VW5.?S;ULNOQMVG?R5"% MV*V#M9[#I8WD6^WP]IQ.7=';1N*S]["IX.O0._1-U8?GZ!V& H2_8>LVK"=+=!,'8%:&4$5VJ+R?#:, 6OI M// D0V2?C#OGFO)!ZIA-E.A:YTO;#@/91:[:BEPB_A%UA(PBY& "#G:#>UX/ M42;6OW,;DY(/HRA-)UPTE9>X%!-[;H;2[?ORO/06>DKI)3,8"F-Y*\N]O MK^\:2]V]#ON_UE^^;GHZF&OG^0W?7[3TW92QPMK(WJ5I%6C]U15)5.QS48.\ M&>DR[KD$>BU;KHFY$YH_L<@*OJ7*XEUS5KU>:4V&WUAI]4UDD6TMM/I@9ZW< M8C(ATOP=2BW>&X/O-U19F]]"V+7*VF)LE3YZI%\789.M15B?L/[04FSC_C?S M7I=C9Z>3O[0V;OS5R_-6-G.W( M<:\_?VU=6;XO.=ZIL-R5?NN8LCVG75AV";;S_:J9(9(L58_K_9_RI1C].\;S MR][BUGME;:>"@"L :S7A!C=DRI,*)!>MDXIC_Z"" 2#-JH[7@BS%;A*&A^ML MFFM'D!VANS=5W'MENNGJ<^Y:=]'*IMM6B*W?FPW\WOVVTJZG;,L;?!LQ@*B-PC5IP(;I7?OI'YH:O+J#=/]2OJE-Q/Z4OA[S2V[W8SM\WU+S8 M_C^&^7TLE>@BH5._YK'-9OF*&W>><5"OTI5K0'/7LR50 M:QI]-(#.@I($ZQG"I'9-6_-Z2;VWU'*2DMHLUN[]R^L:R^[IS6[>02.*\G_? M1RB'WC=!W%JE+Y_X+:8T=Y\'U7?KCZO.W3=%S7#W9=9;3@3HI><9I@X'IY,] M8=S73NY'GBWY"Z-IED, ?+E0J 4-#<#S609MES]H@?J3LU?_ U!+ P04 M" #2FF-5!%Z8CDH+ "G)P &0 'AL+W=O> [<2WLOP^?--R=-UP2F8O"2%4P+=)7 MDZOP^>L%SJ<)_Y'BUGC_&>YDJ]3?>/,^>369H4 B$[%%#APN-^*-R#)D!&+\ M4_&<-$LBH?^_YOZ.]@Y[V7(CWJCL+YG8_:O)9L(2D?(RLY_5[>^BVL\2^<4J M,_3+;MW<<#YA<6FLRBMBD""7A;ORNTH/'L%F=H0@J@@BDMLM1%+^QBV_?*G5 M+=,X&[CA']HJ48-PLD"C7%L-HQ+H[.6'MU?7;Z]?GEO@A4_.XXKNM:.+CM!= ML#]48?>&O2T2D73IST&&1I"H%N1U=)+AM3A,V7P6L&@612?XS9N-S8G?_)LW MYN@6XW08!,_-@90+\T;!8: OAQU2:REBPE,[,"IT'K%#% M6[@*=B^X M1EN!9.\AN))$8I0%-%;+)PU3VTSN@#BI9$EE@N?,!6:,-D :.M9D@QGGQ& ;U*F;2FUNT] MB=C*5@B1F"G:QC2D/(.$UUD.5HE502[%8F[V;'O/#OP>M<]9CN&453:%=%=8 MGK%4"!(!N92&I/"LVY4![+@7.)47[%#J>,\-]PP"+8HW>QGO(0^!C8LX*Q/T)+2_(9([*T T M%-I38WG L11R<,,--_ @CB@>.(X5/M-;:??H]45E\BE[4VI47'8?H/:1JSV^ M;S"%AHKHZ(MD2D0L$]*'\Q&&1FF$XI75M@(VZF04Y,+D,R[R M8"6WQ1AG]J+$WA]D#"*#^26Y'^Z9=FH,K%2[@!989IMHK86NXQRGX&+UQFG2 ME%U5L8G\3RJ&7/#,JC/ZT_BQ%LP+#/!97_A*,B=H@(%)GDZAAN9%ZD+9VJ@) MZF%L;8UN=J;2,W1S;@S $6#MMHDZH:B#O1@4'FJ%%?D6MEP7C&Y<[WD"B_I^ M JHS,BDAI&YX5@JV*SDXNQ4";5TKO\_$U''4^J)RTK=11YK/*(;1UDVJK18? M>I*X$SJ6P+)V?$M)8[#2[5ZXM3"WD >TBV)>+PDM 2=,V3&\BOX#Z0DW9PR7CI19YSAF:RLS7?:2'(J2%D4G2F M@'R(9P82"QJ/)(;X2(0+0(&JJE*?,NTJ/$U!S(HM/#1&0D7AI!R)<#!6.J%: M1 Z"GAC-7EQ=OZ%_X0OV18%?L,TB.@MG9]$2*G ;$$A=%K:R#'A*6TA57>3: MJAJ L("B$QHNFC@UO4#%A6?S%^Q=0UZM6 ^*\\@E:[B>-+<](9H*[6+P,$Q MH7Z8@W*6XCF:&#('BN^$B%V!80>E:QWT%%T#'I'Z!)76R!5SY/L_$! V7&5CF78-RS W0SB9/*KT7$9G!8JP26"*V$LX-CX;SYQ'/^;,/ M8?N>,^)NKC:-&*97<&C:N E[,X=F&Y.U<=*&4%8"HY?M"C+CEDQ1Y0DZ@Q2V M*EN5M=*28#(D/YF7>1\,M&Y SZD:<4SN.8S'%!.$FJF:YLK8KP"E1%$%IR2? M(#C'Z,ID+ ES5J HBRFPNO)V"VJ3L!&N2^.( 4Z A67N+#@F!9A2D]!0([80 MH.H69Q(QM]X^1_;W9339N%I2>8AA33)M-9CS1%2^#A:"=1,X=,2H0D-IA]PA MP>5'EB94?ENI6J$I;'6>4C(\X%ZW0N.K11#'B@VU]\\M9JO"81/ )2T_5 M&SKID;68SP<,?_;URQ[ 2:?QT0Q]Q+V/CG3!:OWTS]@J?!8&WSX1 2_^A-Z_ M>NPIV1L.QN"&YMFQQ[V<28[-GL :RVC>T-#]Q;4>GH?A@"2<7PR>K2^&S^87:_:^KCC ?9BG&_U' ^(AN^50 M$J#[HC"-(1[I*7ZS7'44OUXLO/MEL-@L._?SU>R!<52G(-? =4<#RM%MD>F' M&78I5"83JMH=T/7S+-OU_M]$7-UX?C_0Y\RS1"<*^MO0MU^X#,+U^M&K?>BA%#\B-YL+[WX9+-?+8W0!'=L',*B>O0$G;&4,9\%Z MM6E]CASY>(S 'N>0+3I.O0KFB_FC-_VNVSE\ZD.\!Q\#GCW>Q&\??-3PU1_- M_#B>!]&F5Z6/OK+KU5CU)_Q4\;#PU6RV%,K==]ITT?("7H)UIW]1,^/E[[U[^H MJ8H($F 2WPT;>X39,6E1I_0[G+;-<+U60E/UIHO-R,/UT"Q'&$13SZ#MP]6P M1OXP;272Q.YH#J'S$W6SF(8K]B_O-MK [5?T,9_.-AX1J,>__8P.7,/L6S@R M/@FG*\#:64:O*"%^GRRF%\V#NO%K"7C2811Q9NYPIB"<.=8,Q2Z&Z]%E[F0: M8X77KG$V7'(YC;YI20^38MGMKC?$^4WXG<0IBGIX/DZAUP/EX9#5QS]Z:9+B M:Q5_6MW%I+<+SC;T NF'%?=CU^.8O[X^&-(W[C( ]$WN[T*8-ZB* Y=5 Y): M56;0,,MAYZ4[/0][%O(Q.FF#IC6&>UW4;\-T0,FZ"TI"0$-'.?5>$?8E& ?6 M;<_TV[AMHF%:7RR&&>VAUS$@J+9MNUO<5$%RE=IANS'.HYSWV)N;'AUF[Q3KU?B4VVLIE8L@:6$._ ]E3:<:6.FRW M<^*@\_'"OX^BMI;"U!;K+@ [MS \#,)5Z$]L(>(<<,80(F\V:W_Z6/M,)BM9\\&3)Z&X:J/C8]CO-[QI)7$!WY. MDNJU\BB;[H&KOOH@]V/;/CZ%.+NGK2='T"RUUON*294^ 6JUJ,[[AN*ZH4)( MH(JJ,O2R)/4&J5VX[;2FN1DTY1E]N4']:(A3J:KO(+P^?[L0"MJK$Z=$%>X- M'HA7([ZZ1]QGTOB;>V\N=;&PO M=V]R:W-H965T=4:F''3>;V)ZQ M$S7KSMKQ6$XR_0B1D(@&!!@ M*+]]3T7(&DJL;V=V=DOD@C>]^/<"YULK?OL M2RD#?:VT\:>C,H3ZU63B\U)6PF>VE@9OUM95(N#1;2:^=E(4D:G2D_ET>CRI MA#*CLY-X=N/.3FP3M#+RQI%OJDJXW874=GLZFHVZ@UNU*0,?3,Y.:K&12QD^ MU#<.3Y->2J$J:;RRAIQW"GSA[,W[JZO+NZO% M]=V2SJ_?TL?SV\OSBW\OZ/+Z;G&[6-X17EW>72Z6)Y, ?SS3V!G;^R\,_9B_JS I:PS.IR.:3Z=SY^1=]@[?QCE'?Y? MG$^RCQZ7S]Y4?/2?\?+7]>]LN, M_KYX6E2UMCLIZ4(:N5:!;K0PGNY*26]L50NSHU)X$O2E$5JME2RH=I8)?2F< M,ANJP4!UXWPC3*!@P5=(6K9M>S2='8B?29AB(&$@_:?4JHG<4?9! #G3S:>OV;KX<_;Z9Y#>2^=)MBYXVI86UMY+O,&9#! 72@?G MJE3(=DV<297+:%!/+D(04?E\1CLI7*0$IF5]>#R:=D<1C-C%WDA)3I4#YWDHDPEC)ZV\2R9,D&2>UR+QG$4)9UD-4*-G0X%'UXGP?+ MA[-X-MNS"_843R: _9QG4T"[UG%*0=B/L^RX.QAC\OE:QMFE8=Q'](Q8:4F7 M)DB\"@#7H()"@;TW="5<7M(1&S$[WC>"!3\6+-2PUKM?[);+%ZGPJE (PY@^ M+9;(3_ZE4:Y]$Y!'A<+;RQ#]> < \#L?->&TJ;@9I>/.('8AM:Z& M^4HGBP=,!QADNG,S6=YU; .?,'?[KAU"!;K[G V@CBIJOY)N@V2<;]"Z6"#" MF K!+22BRM_DRC5PD>;'*5![ -$S=?K&W&/1)Q3"ACXA+P74OG.VJ<=(0YZU ML<+'N\4U'8@'+%KQT@,)P]#LKXU%(R(<)E-Q(^."P/H4QR]V+8Z5\"=(4S##&+0:E5 MOLOX(*S)Y2X*@HPUOXCU&OF-\@EMQKHJ]%*3T/>-@;/\V MX7M^GG.Y>L4*^TA&CC8 X[TGM!:OK=R4R!F+\0W _3YU:6]ZUM-O>9!U'8'0 M^."DV8#1/-I:-1 :V&4VR(>,F)*+.E7_#C"9$,8Z? F/"!OZD"VSA(E">\L: ME $R<5GG6B'B)+_6%D:F,L<#Q$J#:13=:HSB>19[Z\%HQAME&AD!< 7..'^E MY[4:&#W,$79[8=1_X%S3PRQ/EB[SRX"T\L,UMNT_L&V/]^$#C6(!F-8!,V&C MQIPT'N=="S:"R.BFL8Q^L"@MSC0T$N1PT%6 I=N'\\P SLN^6#!DQL4#4 M$C2(KE(?RF;0 4/X&1;\ME3Y]\1;]#V'#\$KU2I.Y+6S%?8!X+39P'Z'O6@98JB?2$F['V&(X;+""U1:&H8U50#LXZT- MJT>,QO<:AEW1KE1_)Z$%KD *;2=X4/2,WR;ZZ:P"?5(F82^6%+D7:Q3OQD8T MV%,S)ER!4X? -VX\&Z&(P6[/;=_4:*4P\*L(>ZUYFG-DH,);8Z1. C),9_B,PL8EN=\8 M_EL2OUE<5MZZ5<)G1KR<6T];3/V]!0)[NFTV):D0QR_Z4.A'2_LA_MQ_"<@1 MV"S.D.GAH[>SR>""'0<6_XW 38@=,MVU^]/^GXKS=$%_($]_&PO=V]R:W-H965T2UFN;#&.DF8ZR7Y);)J\O,]S+Z^H%\NB_%K-I*S9MRS-JY=[L[J>/SLZ MJI*9S$0U*N8RQR^719F)&E_+Z5$U+Z68Z$59>L1M.SC*A,KWCE_HL8_E\8MB M4:S8Q)%.9U$1! MX-^5/)5I2H3 QG]6-/?66]+"[N>6^ALM.V09BTJ>%NF?:E+/7NY%>VPB+\4B MK3\5R]_E2AZ?Z"5%6NF_;-G,=<,]EBRJNLA6B\%!IO+FO_BVTD-G063?L("O M%G#-=[.1YO),U.+X15DL64FS08T^:%'U:C"GSRKV.I_(R>;Z(W"X9I.W;+[B.PE>R/F(N;;%N,WY#GKN6FQ7TW,? M6.R&JF>F2@'TK)J+1+[<0X14LKR2>\>__/;6/'N[J-^;YYU4S3RS M>,2&;,8,/%&B?9Y*=%ME__2OB3OB\8O6R8%4SMV*BE' , M64ZOF<@G^#@%3[)4^51_/RWR"C&%KY;^7AOH)3,E+QF@J10T$7&8*(T3F?@J M2XLM9RJ9L01.J/*%Q/X%&TNFZG:E_":3!>$!*RXO54)+2IE(#%1ZSU)>4?RS M2Y6+/%$B9:HCHF1$$D.D)?W)"_Q:RW(E+*M$"I*3A9:.)*EGI91Z MCQQ2LZR)$TEQ FW.:YF-9;EV=3WQ0U(7-.CH,6=DU/!NC3!Y)=*%J$D56(Q9 MFO<\(04P*:"LEF/"N E;S+6<29%A1LG2HH*X99&U.\!&T"B(R'96+;[):L1. M95DC%ZS)B:I":MG47I(N)L2C_(;<,E'U HY'RL0V^?0PA14FS;J*S40%G8(K M*7.F'13:I5]A3*::WTHY+TH:A95!I+$=OHZOM;"[-3."[S(Q 1<8LAB1+^>E MJN0A@%@R"@CX!Z.PT?Y4(H_0%A)^U3+02-1E2V5SFJ@2,4XE\=7PV+A-5QDD MM5;_M"P6&.Y<8Q.Y.(3#AH4V?$L)PAZ MH]R->V.' T8\R[/]QFRRJAM(J:3%;Q] +ST6]L&_=CR0]\@ 6SD&H1P8]]R'&<'7&RE^<>( M%1%9TNT,.,% J(@CB\?AG9'"YOTHX)[7&QN&%#P(!R+%$'JQ&PZ<]:,HP>%2 MD6$T,&$$Q+3#(6$1V-[=\"%P^F'@6#SJQ\P^<3P,&[@["!G(\?H) A 0]8V MW>UP$#)$GCT,&K"]0='&[Y=M_Y0H-)AL2SXUH<_C ,(/KAV"<(>O; M>4[P *4$U,$-Z3O2>:!!.[$,Q@>/-8L0$APGM6%0ZEX6@@:O1M:T(#.QXVS['M'T<- MWPI,Y4((:#5D5H>"QQN&&AR0[MT5-3C@P11(EF-(>OL!,&;8>0@IV0\'H0;0 MV(1$'L#$4.A$".1A'$"C/!R(&C^EW*"MM[BASNSW)AMY<''9]#.3IMVXZI)2 MAZD:K2E2/[)I,.DNI_Z5//**.FC=GI48%XN:350EIM-23G5OIH6$\?7W_EI] M/4<$):DBWNB+#NNI+*:EF,\4@1V6@^+?W\]J#FJWM6G;V:L&T\TM[:V>TE8O M:8V3GTGF!Q-!9?(0&QS""N!)I%4'1$/+"Z+.=R3[*.JB+_5XO(A]R55]V/2& M>Z$!R#)T;Y#2XW[*\0(K0NI[H[Z!TKRDWFK/H5%'.OW"R0'@]8,"-29'9FO4 MVHVF09VMMH/UX FO<=T'->-ID64(1-5QGU\8M.EMF,]RPV[%C6,W]]C;XDJ6 MN8[TGCU0S1BPQ@FUU;>' UTEL2^U2E6M$.7[I@(KM$+;@%/]@H=F^MYC,][; M%.0L?U_/N0AU--%-^3 *.PVK#Q;PT4G@#S46]XN M>'-X9/F>H?5AH_HT#+LQ(FHWPCDH>D-3AK=BKU_[.2BE0@"B*4P&'+K;P_63 MQ3B$0.!V0<[;.$-B@F_%2&([4"X.+![W]>WA$&S(7([GZZ< NV'.\3R+^WUS M<=XOG&FN!QL\,A/^-*3[!V7LX46_H+OIF/ST\ [^;&^D#YP!-L[2G%L\V EW M.'Y[81_6D*D,"=SW<##;C7748'M^YKLXINR$.1TMN2$C<> CE M0?RX3/?3T.T?D[#]WZ_B_G\@#U]4V#B6^O;N$>EYA\Q3@W ,5'9L&?5[[=7492 MTDE6+.@*6B:N]3TY,9FT-]5JTB1=C&QNQV$>W0@<:4N]:Z[3K:XJ4BN_R*D1 MV78*2YF*U76_*A-IRL:+"FA6Z9XC%)+A@U#K^W\ 1+:H9'G47*>F*W^DKD\K M:OI6H^F.*;70U33OWGA<7?&L60M4^O[>0UWKW#:K[G-V;]:V$RX6XZH6>0T& MTFM&&H!VC-=DNY?@6O4M!?0.[NF6I1:>KL5VA-2(+]F7T<7&3=/5%&T6V&LZ M8X(ZQ'3IGK9O[M%6K'DW@(FDI"NCB&I-!^QBI:4)GZFJ!J;JWO)ID2ZRL1+- M3=]3D8N)&+6FJ6ZVC9ZIQ-]CG!S+ABSM&?!TY6"4)A-)F5*;[MLQD\N:"+ORN&+?9Q(<=I@0G@^II=)+.B2-<>38M% MO264XX[<7_5SE/H65BLV8CO9W:5C Z]_G)S]^=',4SBRA_'TG9^[F5RSHR_# M3]25FBP0C2UC)H8R>ER)\1SN,92Q#SD0J'-K755]#@S;5X/W;VGW[/1#/M5" MKQMU_&)5EK<[EEL 2)NL^;_5"0FTSY T5%V4U^QD@?J]5#210)AV/)=+]A?A M]C[%$+>?GYUET57JWK[ M]6EH[7BO)ZIJZH]6;3>8?SBPT\S+.R@9<80"9YI^5]9V/)/3KKSX!I#<<>+; MULX/F\#AR$+?33!X8Y-3:/KDO2#W.OW*WI8X):R"?^.!\F^]G MAN'9;_-N#1&XC8J76XD2>&G> %V/KM^?/6E>&_T^O7GY M]CTB1*&&3N4EEH)M?X^5S0NMS1=4;OHETG%1(S#UQQGJ?%G2!/Q^611U^X4V M6+]5?/P_4$L#!!0 ( -*:8U5'0-:.OPD !L= 9 >&PO=V]R:W-H M965T>^V"(%+)[=??8-.MU:]]EOE KB MILB-/QMM0BA?3:<^V:A"^HDME<$WF76%#'ATZZDOG9(I;RKRZ6(V>S$MI#:C M\U-^]]&=G]HJY-JHCT[XJBBDV[U6N=V>C>:CYL6E7F\"O9B>GY9RK:Y4^&?Y MT>%IVDI)=:&,U]8(I[*ST7+^ZO4QK><%?VBU]9W/@C196?N9'MZE9Z,9 5*Y M2@))D/AWK2Y4GI,@P/A2RQRU1]+&[N=&^L^L.W192:\N;/ZG3L/F;'0R$JG* M9)6'2[O]1=7Z/"=YBS.S8L MZ@T+QAT/8I1O9)#GI\YNA:/5D$8?6%7>#7#:D%.N@L.W&OO"^;O?+CZ\?RM^ M7_[K[=7I-$ BO9\F]>[7+>P5> MJ7(BCF9CL9@M%O?(.VK5.V)Y1X]4+^X^'MY- ?'*ES)19R,PWBMWK4;G/WPW M?S'[Z1YLQRVVX_ND?Q7;_;OGLXGH2A#O3&(+)8*\45Y(IT#XQ%8FJ%0@=D4% M#SD1-GCO/8)=FE3D6JYTKL-.%"IL;#H1;U2FG,,6B(D+?6^EKF4[E=BUT7_5 MPDEL5H7*\?DBL<:K+Y4R"9;;3 15E-8AYD6J,QP0OUBIL%7*Q,W:2)-HF4,R ME@9MUA1L.IY.,N,3">WIH)))"U\HU]L#;]- 4#[=/H:2O:%WE215ED'WJ74X&+%(WI8JO M *TL\QU]P-=RE2NAHRMUM,U.2>?I8;O1R0:OK%=WF)2.[DI>M8KA&7X"WI K M^/EWR%78!]L@-0ZH>J 5+")%LI%F'8&UFL K'3;@JS[Z4CEM(7DC WV35RGV MT!=L$W9!"CD3L137,J]DS-4YB@4(H1KI#ND%^H,M.M"[PD+37']69#B $L:& M>(:GLVNG#NE5R!TO9M/(G$!/Q)4&_$PG$F@:FM QY!G=G!Q)0^XDV4;5W!] M':W7UW:_#. V&HG=X;R\L=:3W'K_5,CT$W)^)ZJBD]C\QIIGL$7E'&'08$ = M'5BF$0\)DQDK"/R*B >XB,5BA>"BD\'?)71F89&ID)@Z4.-=:(U4Z <[ H+_*P+E2"K.!D4G/+FK4E/4J'LTW,1QG :=I! M_BIS:0RM\(&(M@8)X:B-K?*TQ\1$NZ0J?(B&S]&8Q'#?KV@]*E=H2UC/*H#7 M?[5:#1$%&VME.0#'7?N@U6 8[*TZ?^22_#;(AH%0H.>[=+ )G(P#90XCH1\( M&U+' J OK4G9^R8A3RH*:HAQ$ .EHS>0I2JFB))P2J8]T8QTZ*L0Z5S34UY+ MG;.S2NLU-4KL$*/6DA_4-5A \8A3:BH#>/;5:+PK"KOPL4>+C*,;9Z"I[_NSS?!R MN ;$\-D#_/[DQ7@VF[5!!]=\Q4AM3/2)M9C_#XCU&T:/7V$$M1OVST,Y11$W MYJ[-48SGN_'7#$.FF$_FF OR_&\A9>DL=V/6Q$I5YQRJ,DCS%:<#BXWH+ (W M ]'7,4,!=*KSJJ%QQTS>5BZ)9U/UZ'!R",1C.(K3.^=]"V/O24,-6X*E'G+( M(406>&31>&1,\DOIZCX/36S>.J[F,&&[=>ASRY)B'7*K/?-26Q]IH+?"]$<(X7%1XL-1V0O-Q]3;VJ(VFZ!U: MF@*&O-<\0YYI^JG;Y!HL3I([/W#?::YSIH[*Z&.JQ\NK"_'R&(ZZ:$:=0/&Z M-XJQC55J"PR!2F-.8DYMG*H=1LXHXEBM:*P>T',B?H8^,OE2:<+>-GM4X^+D MHWN#DB"O!60&A&B$Y9F0C8!#*PPW,CBT.Q-TG%R9)L"X=V,&PC1=%>N9B.E1 MMT)U^[JK)9$@@[#5)MXV,5M6))4XSLU;UC:0_9XILO-&QS31AC=K&+'PF#&N MQZ?&"#0P-3TNI]DAD-SET9MQVV_W*U?,6S;+R'#086UM2EF_S^%F+05K3)H= M5SS4 [?'L@>X@/I+# T=C71[5<#3(AA\B)3GN:@8C]_*J SE,'.VN/NDAS6$ M_4U-*^AAY.AI:*QN9%%/+31,-+MD!?>YFN*]/!54LC$\4!70,;0$:,Z)"G8U M(9C-E-X3E5,[[4.[D'%O.-&M40 #7Z- I^>S?T0=]0;^I@-7BKC>]+2B0KQ.-[C2V-A!.1Y.7X1>9'_JX,VMWM/&=P;OGUC>/33&W&B.=L@\C MAV&)_=51O%P:),1$O.X:]G;NK6?0FM5-)6J+!$P:?;/4 M,T7CQM@L/6]*,Y_Y_?/)B_9%(_E;[41C641))4#Z?LV_$\MLWR8T6(Z_"$EGA;I12<5H^JOHLE8Z MS$"16#"(+3FE\^TD7(.(V2=S[$72X-O'5:7S--[8*;?>D;HZT; "S09\+*62 M!YKVP$'_+[NJFX2Z@QX#S=]NWD>8-OI$IJFN9XXVO:$;H]8S;:K!A758<*U= MY<528VZZ1!Y6613P%B7=%CH!N5'Y*$D]N5A>OKUZ*I9)$$]^F5Q.T+V=/)V( M#T;\6L%O\]EX8!RDNS1HSZE/4Q-)Q8\67+%UZZ'FW]9]1I"GJ#XATJ*N<[?S MW6(V?RG&?)\A(E!\_''O*IR'_I=*(G61\<*^4PCK6]M.920*T,UY+#>=5NM@ MA-(.5>5+)1U5K_U@0^'>\(P:5_K3=JYT5YJJQN"'*M>-[2'\3/,=,YT^.QK\ MI63:^<$*_%CSSW*4.#'=Q=^NVK?M+W_+^(/7?GG\V? ]JK4V=/&78>ML\O+Y M2+CX4UQ\"+;DG[]6-@1;\,>-@F*.%N#[S-K0/- ![>^AY_\!4$L#!!0 ( M -*:8U5:H2#D@ 0 ! - 9 >&PO=V]R:W-H965TCA),F>[*'#.Z64F5 M,D-;M>[I7"&+'5,J>J'OCWHIXUEK-G%GH7]PMI,M M2Z;QG13?>&R2:>NT!3&N6"',K=Q\PLJ>H<6+I-#N%S8E;3AL051H(].*F31( M>59^V4/EAP;#J?\"0U@QA$[O4I#3\CTS;#91<@/*4A.:73A3'3@V/H/Z7G<:0@Z,)S:&_?G(:A M?T&@;A5<=."*:1X!G0#7$,DT+PS&L-Q"S.]YS+,U9-0A>$97".R><<&6 L%( M2YQ2>5&F1G>)%#$J;?E,@K!Q-8'Q";M'124.69$N48%"C'4A76AMM5] MBB:Q^GVEJY44U&X=H8N31N,,,8GCW/OFB:(O.ZO0I$H9G[8;Q*WQ]XP''?@V^O#OV,.^EX0[-&#T!OYH^;V;!PTM_VS M *Y=TMM\J^O@]0E?>W*XESKL#P^\&(073_:OM^UDE\ -&_LC_\#D0? C&YG* M"$M#^U<7F3I\_WU)E,U['UV_ZP>'VW$S]GYW%'8>'02=NN\>PQF] F=W\*'J MF^9I01Y6CRL,FP&-\K%UXCGV=]1N6+:U56';:PP#/_!\WW<8TI- M4:W=+&[?=^IMY[)R_\*7YA:0?(HH@8!!@ EZ]]W#R IJI+=3EXL MD[@[[.WM'<#+K77WOB(*XJ'6QE]-JA":-_.YSRNJI9_9A@Q62NMJ&?#HUG/? M.))%=*KU?+E8O)S74IG)ZC*^^^)6E[8-6AGZXH1OZUJZW35IN[V:G$WZ%U_5 MN@K\8KZZ;.2:[BC\V7QQ>)H/40I5D_'*&N&HO)J\.WMS?<'VT> O15L_^E]P M)IFU]_QP6UQ-%@R(-.6!(TC\;.B&M.9 @/&CBSD9MF3'\?]]]-]B[L@EDYYN MK/ZNBE!=35Y/1$&E;'7X:K7SFZ%8VM$XW]BJM$;X)3AHMP%AU4% MO["Z^>/SM]O/O[__?'/[_NYR'A"2%^9YYWZ=W)>/N/\B/ED3*B_>FX**0_\Y MH QXECV>Z^63 >^HF8GSQ50L%\OE$_'.A_S.8[SSG\TON5^<=N>6>.,;F=/5 M!)KWY#8T63U_=O9R\?8)41_=E?Z,C1+ BWUOKWKITMA8!;<<&_#L5RN2Z+919BU!9 M3T)J36M^;)PMR7-[2BW(.>N\L$[86L67'O8R".D4G)3!$V$9@=#\(K>MPVM; MBJSUR,L#QQHSQ =1*E=WOI@]3H;!FPSV)7*\.:/.L0FZ[Q"+GQVDG$OG%/E# ML%K)3&D5P @B.&ERY#EFAEP &+1WT6)L9)H238W5*M_!O0974X&9"*^\&IAD MV+3K4F:'6NZ.*17D@\RT\I7H-.5C* !2:QF'5

U>(,54&."DX@@U?D3 IM M/1*]Y;&6@U3. ),C5/&Y-9$3[&(*Z0J/;=;2Q1*R'T=E S(YF)E&:GNZX.[: MF*UH3:%\#(;=]XPQTB2$@S!B6P%FC 7!M,X10QJP,4$*$Y>*:;1E' A"?NR5D!;1 %ZE[@E$AE%:[ _U[ # MN'G 4' MR^-XT'N9BMKMVB(K@#?$/BS=1,! V?-GKY=GK]ZBA% VJ("\0'P@G%SH)V.C MH) >ND+CU 1AAP(M+"6S!&!@NN,T*5^K>]*JLK9(TDCO^I)4$%Y&,.V8+P[8 MSMKP+[9YMT<)1W:C;8<^X1VTH@V"IWRLT:=91@!'M0TT$]>4R];36-FX&.2V M9H4QKX9%8P+<6X,!6ZB<.X.F)PFFC=1M%Z44&$*@&EGF1,PJUS-$#C96=ID;[*/11SLJ,E3MNP/0>C::+J!.8.E81:&9]6$.] M4O^7XIA7+G!?_VD4 +\]4:Q8;EX[M-YK9"2,T*NB5^Y6:3WT9EPQ,M+7P3TY M:^R:L.:Z8778M^QTV*R,;I]<8BHV9S]3&.:1CN$^$]\KI1,J'J+TH^6!E,30 M3??68/RR5HH#&>T)Q'".VBP()<'E*Q$4:[[?E(Y3&,^Y1^<0MXD$,5'+1X,I M-:L?IMQPU(R1[LM4RR(B$[+84#Q84YNEP^?8,8JMDAM@W NN]Z6RY'/0FM-= M*)V)08"75;#&K9I;I+$NG<0(9HN9^&"W:",W'8[^1IFN=4^%W;C3G+TT("BY/IS-)[JW9G@Y<7YR;OE?'3)K\FMXZ=,+*4)Z;X_ MO!V^EMZECX2]>?K4^B0=+E(>C)9P7O9@(ESY?TD.P3?QDR&S !TC\%^,/ M]Q VP'II,=Z[!]Y@^(9<_0-02P,$% @ TIIC54)[F4"H P )PD !D M !X;"]W;W)K&ULI59M<]HX$/XK.^ZDD\PP?H.T M:0+,0(Y.;^;:FSP'H5P1!3&WWO.H'/I@,?C _M[KYVTK)C!>R7^XKDM1\%- #D6K!%VH;8? M<*_GVO%E2AC_#]O6-B'CK#%657LP15!QV3[9TSX/1X";^ > = ](?=RM(Q_E M;\RR\5"K+6AG36QNX*5Z- 7'I3N4I=6TRPEGQ\O'Z7+VY^/LTP/,OM#_1/?G0EPT 4X.,?^ MWP(\3Y'T0WA! Z]?W:1Q_PZ6N$$Z(IC0ZY33SX)58$N$>XTYMS!9:T2_?D!\ MEO!);;!:H8:D/8EN;]YHT[!GDA?L/<@;S>7:[\Z>++K"@'OBDPZV0,&Q@#EJ MKO(>7$ZN8*4TY8P@!AHRUJ>#VW(A8(5, Y<6Z1PL, O+S^\74(O&P"",XXL[ MJ+7:Z,TK#+]:2P>YM_S>.OY! Y&9,>F-(-!PMF2:AN,W?I4QN'"6FF-1I<7]"] M1UTA=Z)(J//3D=4^FJL>(,M*8,9=D52K.5F<#*CGW!^EW@E/WMX94+7+8GL\ MA/5T&477:\^:SH_5M> 96PFD&U&O.1EO2^Z\?K_1JM9,KA$*K2JG(B495,!) MZ 9;TD\G96IJ%F[U.0U'6761)!TP/0GT*7O&]%YFZD%9)N />FX/9?F3SU-W9734O"K4:]^B#:EH MI&W[6+?:?05,VN;W;-Y^0GSTAVTH705!X_#M=0"Z;(<=-]&XW\ 4$L#!!0 ( -*:8U7#,R:RGPD - 9 9 M >&PO=V]R:W-H965T.FN/N2Z(6> M&SS:'W4//NIE&>C! MY.2HD4MUI<+GYM+A;M)+R76MC-?6"*>*X]%\_^7KY[2>%_Q;JUL_N!;DR<+: M:[HYRX]'4S)(52H+)$'BWXTZ555%@F#&UR1SU*NDCC$2N"ME6X:.]?:^2/XN#K=-F6%!K$__+ M;RD.@PTOI@]LF*4-,[8[*F(KW\@@3XZP!-7^(#]:$THNW)E?YYOX)3.[MGG5VOY[M%'BE MFCUQ,!V+V70VVR'OH(_# .5NU.CD MUU_VGTU?[;#\:6_YTUW23UY+K[VPA;@DV29(0OLV(W>+^50JE$AF6Q.T68HF MY5H4MD+AJEPL5B)@S:FM&VE60CHE/$@#O!!*H8VXE"Z(L[.Q. NJ%B_&XMP& M)?;'XL(MI='?9:Q"DXN+1CF^8[,'0G=$X["/QN%.-]YIG\E*_*VD\]N"\/C= MXM/ 6\LF(QQDOU,-G/9"![HW+784VDB3:5PA"2 $SU21"WA\.!/6B<.#)[=* M70O(T3;W0IFJ$S5"^7$P?[>XRSYVB(!RE6K M7<:0LOT-4WYHR;]:H[C24'(AV80[4C\PDN^C=')W_^E/Z?@@759""L3"L:8! M]N2B4GLB)62%A'"EC\5MJ;$4 CV)6UN0J +=%6)A1(9 N8T^UU0$L@>3Z\! M5XDE*5X>"]%B/*,>*V$_KQ1*9N4] _8'!L2(#F(P[E9(_W_2/J\HAX5RRF1( M.2*U8FCJ&$AC0WQ*0E"P.8"1#]+O008*'10( %(B/>!U[Y'?VU%QS_J*>[:S M9CY[19:_A0\U 7-;U?V]JSWQYWQ^ M"?>_MAH!0.LTF#5H!\6MEM=*J%XO85AZS"=-9*=0RB!D46""X'C' M9/K">A7BUDK+A:YTT$E4CD@#XZU3R0/*,FE^:$_40CYVQ/A#M_<&89.5MS\R MUZD;95K%NM4WC'8H09&WCO"WWL,=@$L7&,Q".Z 2=(B*7(,:)PIG:VQ#':^C MN M3SWM,/=^)B/>H".LTX90,/6V=H[B=@0+A&]PXM3O%;[_^\F(VF[[J%O#M_JO?!<@Z5[7.8J2+@GD:D*LT\,F$ M':=H8=12TF0*XM:L3^7#GD@"]Y^_\HGX&9&PTI3<])QZ0B<8^)3J>8%XF[AOQ;O&F]M2@Z:* M;5V0NHKT0HTI%4&L(]3U,M+R$!\9E/K8'7V[\* = M*F$3UM2 M7DFH0(=LG%TZ6=.LQ6']RWHQ!Y4@=>@_H,G A 8[OB 'CJ5>PB'7P_.O^9LO MESTVR?@Z!H_$A5*[O.M()"4EGPQC6=30MD&RD@/C?.N;V!5S\ N@U<6$H2/S M7!-XQ[W_6Y$;&ZBQ1MT9#7N=A&T'0"<89&!$'.FV::4MTX-7_?\YL>X&Z:[$ MC:S:]6!JH= -^D'K8Y#N]**M[0>]6%36+)]4$=B1XCL&0>U4.N((>J[:1>>& M=?'1!:O^J/WUYN")(0*'98V2X7,Z0Z -J6.@2%J#,;V1@ZX3G6C:147D0Q#% MFSUQ53)QTTM%XY$<0!B7%7>80?S&PMNZRP+X/9Y%X\1"@JAY.,V[O5X:7:"R M@<%%FR\195^"[PJ4NN]!FR52Y823H0NULMQP-PJ+EM9*4M<$Z-"?#3=J^+>D MOAA[5&^XXFXW.$>D,ARR[P0&=&UO8->]@L[;#"%0R(SEG?2] !BA*0PMCB#[ M2%S2Z+&T-\H9@@9@8N_E(X*74.8T$V)MT5(UP_AA;H>]XL=$T&NM#@PA$O",,!OR_WD!. M@MYY9@$KTE<;P.X=.!20 U*Q^\'8=;7A>*:EX1D)3X!L6M [6%50.=3:Z+JM MTT1#\JB#0ZOGH\/& 77I5+*U\Z5F#?UA2(K$CKT*;C"))LFA]+X&SZ&FDJJU MY&XEDJ-8N=\IT+&X')\%'HA*YUDT'Q4>*MYB+ 4) M;^X1Z]IY%#2A#$[Z^US3P0[OZ*A%-^YZ<&@ID C<6E,T\G+TYO,)+G MAF[B'HZ%Z";A%/P=MP-,2G=2JCZ8Z7:FS2-?CF2J4.C#DER>LX,DTM M6_JO*!%*^NQ!,[$L% #:-WAM0IP9";(HM>'!B&$M<_113X>C>+!5^3CA;-4? M<_@<O].OE\;<.'%F6&OHK56#K=._YX0@QY=\/XDVP#7^S7]B J8LO$44@ MCQ;@?6&1Z71#"OH?<4[^"U!+ P04 " #2FF-5I:(M_=D$ "D"P &0 M 'AL+W=OD$$N2-'*20 M1 HYN%(=$"70?G:\DZQ[N_;6]A+X]YVQ-R&A 9U._9)X;<_,\\R;I[\R]H?+ M$#T\%[EV@R3SOCQO-IW,L!"N84K4=+(PMA">/NVRZ4J+(@U"1=[LM%JGS4(H MG0S[86]BAWU3^5QIG%AP55$(^W*)N5D-DG:RWIBJ9>9YHSGLEV*),_2/Y<32 M5W.C)54%:J>,!HN+03)JGU]V^7ZX\*?"E=M: S.9&_.#/V[20=)B0)BC]*Q! MT-\3CC'/61'!^*?6F6Q,LN#V>JW].G G+G/A<&SROU3JLT'22R#%A:AR/S6K MW['F\X7U29.[\ NK>/?T) %9.6^*6I@0%$K'?_%<^V%+H-=Z1Z!3"W0"[F@H MH/PJO!CVK5F!Y=NDC1>!:I F<$IS4&;>TJDB.3^<7HVO[AY@-![?/]X]W-Q] M@\GT_H[6XZM;.IC!P<3D2BITA_VF)X,LUI2U\LNHO/..\M_@UFB?.;C2*::[ M\DT"ND';6:.]['RH<(9E TY:1]!I=3H?Z#O9L#\)^DY^D?T^RE%C=[]&KJ%S M5PJ)@X2*Q*%]PF3X^5/[M'7Q =[N!F_W(^W#D92FTE[I)4RLT;262!7B'4Q1 MTG_^ J/4E!Y3$#I]W;QQKGH;@,CF?[-WH^%66)EQ:"A /D.X'LTN0073,)H] MPIUIA-/C5O<(/G_J=3JMBRDNT"*IA:GP](/<9^#@P91*0J_;.SR'A9 J5UZ$ M*C:+H/IJL:"R=ORY7P-=O59::*E$3GNEL#;:#0!;T!2%5CJ M/U"85"V4%%& Y3-,EWS?8AYW,U4ZHB@\M[R:V/>;R_LIL'IMB+W=.K+,F3%) M#@+9FB.DRK%%I=GQ>B-E@Z?V\ST"41B"%E_!\1^KK[GU$@F(%M4MWTA"? M502V-G7!03T"F0F]I*RI;4JK/ '+@? 6 =K>L),P:>T\[;BBCU:AS8%B=;3:QU0H54"A$4HT#>XAO\01-&^<$*T M/ZSB]G&K_?-5#,_4X"L[#\%R)L@;S)F)[4=A*P(EKBT:\M2N P6-%6Y!CR0S-@4I=!<+K$C$TL'SA,.8=.M MLHEMNA4GD8 D,2%H"!,0"YS*_/U]US 02X_.,WN<7?BOUT29_9W23C3&? MZ,./Q%?P[ZK:XJV@AD_.'VO I'TL+T;[_[#WQWW&6CK'YK MJG^41;]_>?7-55;HK1JJ_A=S_)MV]_F2]LM-9?F_V5'>O;N]RO+!]J9VBT%! M73;RK[IW?$@6?+.TX,XMN&.ZY2"F\GO5JU#>+*AH3R MH>_P;8EU_:M?WOWV[N>/[SYDC]Z;JLQ+;1^_N.FQ,7U]D[M-WL@F=PN;?)O] M9)I^;[-W3:&+\?H;$!2HNO-4O;F[N.$'W:ZSI[>K[.[V[N["?D_#+9_R?D^7 M;JD/NAFTS?[Y>F/[#JKPK[E;RB;/YC?+5 M[?,+)#X+)#Z[M+LG,?M%YV;7E*2RWN37O<[>FKI5S2G33:\[FY5-;[(< MXJ%;6VA7O\]*_)%7)=ZP6;]7/7\/ \X.JBO-@(>G%LPRVZSMH!/-#O^:0TF& M:%?8,:^&@IYNRWM=\#MZE?6PU6O5%-:F*U23:R'[]8>/4(@GSZYOOUUEGE_;SM38:'2_MVPWNEOA M8D6Y+7&TLEC^-OO5M&6>?77[%9/6@X9.5Z 7+\#3%#6SY!&,BKW&05>G[*]_ M^>;N[O8YK<8Z_O3D^>-U]MK"D^7[%>_B;U(6V(%.M)D*7!>BE#-G(BMYC5:W MNF/W2C->-]DCTX&OCT<,L-C'NOO/GR&BWX+%YDA*U*M-16+8$LMM MNAGQ^LG7S_'L:/!":SIYU^J=",K+,*AKU'-6:[YI;2PI>%V;IAI;!8CS-\IV MNM$=Z -!'"A@@!I:2B3?9 C@Z)EO^+(;,9FLY]TOS=%6/CKF57,/7J' MPW>G[&,TE>3/0(/9]D?5Z0Q^&E%1S[WS0[3([+WN\%Z/T'IMMM?@0%MI)O'/ MTK:#PN$#L08,!PLL0AY]O$SOGZ+%L]*( AX4A%:KWTU7]B>2[)Q:1&F7-FII MD9F#[M@=91N=JP&<M136$2Z)P%532+2/M,T1.46)/4EE+)S3YT'6ZN.[-=0&9L %;7(Z=5F]Z M58T7L#?W1X[=+#AA/XM"G+'1/10 (NAA0K2F B\J(H]0EC=M\IL]>3;=QK"J<@W?^&' #/M;1HLE[=.9W7&N=_8A( M4!1L7:O/(K\4YTL6[Q^!;F_I76*LSMU-%:ML"NA =UIG/Q'?%M1O026:@ZD. M=($] "$\]J[3K(!VV/BWL"Q=[)A"QD7F+3SCV&/W] 6H+ 96#V% IS>G#-Y3 M;))UI[2?V $VIB?&@4/DZT1/_$N.;8''(_T^C][3X+VD]4ITBM4"WT3-F(G@ M]*)M=8[0EY/":^?#$=1L:J1TSL,0@?SW#-V14"%\:)V%X=D <]F;H8N&1:QE MU^8B#*,=[&2*S &C3M:!H8IDZ384ZO$F[R?"JZQQZ$@ C%^LL:T$'+UZ?E E:1U9$MH6LH:R'.@;W@ZH&D<#*20HG5Z>51'=/ M/&2J[R$S\3?X.R<>$#'S&[**6CVA([J[1'4&I O=YY@T 3GD@;8G_65-FC6^ M=89,;59GQR@M4:81VI'MP&K:@A52D0Y!5V%3Q>!Q%/])>N]9Q/SB:YR_!O85 MNH(YCP3MQ1M0+$&IV@P!D>_5@<(7]MW 36+I9NC9NK7J&EW(MHA?V%5@-F'1 M\"@57N>?07@JJ@=0A,+6C'.\'R0E8 X1D7BQ()C!7+1(#@L..1M5L3USRCG! M\6P $"EN&YG# -U.L(O8/7BTU982 I@E)53X4KZA<@*$S2=M-2&Q'^?R 8;D M8]DZ_T/;X+HXR3)P@RP9#8;K@QL.A9\N8? $<_-KA"W(G,^1-7NC$5KW6'P9 MBE\\>(2]7:XRU;>%Q($MWR'Q8@(">@C=:S[2V+(@GZA:R(+X@\ARW)8 MTT:3ZK0DWP51U+#[V X-2T95;$T&_L6_OT*((VO''Z34.M\WQ"<(K:7X1&Y+ M#I@W8!<"B4UEX],&MS9]RS'KHG+Q]9P!>NA,Q3S";BU(KK6R0\=.>Q+723"L MA1$NRQON_G,) RYN)=0'.8H$MGH&GIB);Q#@-0LT'0PE'[$0DS0%3S8V* =K M.F6]>+\FB<9@"D@X5"1IPG$;43'"'O"-B!Y:SH#2,2LIGD^R^;#[/MDAO!%W MG]UP*:/_![EC.)/608V+V=J*? L)@+22@UU-^61;/7!-SMF5O]1R<8$ BS!3 M"L><76#'$L( [E2PM]^'0O)Y7T$H@$FMRU/<@3AJUYFA'=<5V/&TBM!?I"6P MCTD,MUGRSCE?+=^K9B>*(Y$_35)\= 2G2(VZPN'I; =+;R(Z'&$LQDB%=LK/ M".(!=F7EUFLNN5 6G4^,Z3D2H?(@$>+<[X+/!$@\.ZI8_6)?SOY+?+;;_JR@ M91-_21$?6_B,?132Q7-9ODT4HB.$V$9@8>?+-R[!N<<+S-->47)$'*4OH,9- M;Z?*)+DF72]7K>"BTSANULH5CZ855=9@[_*";K1[11?&AKK27*T"A'$8A+]+ MOF).ZIWI2^>U T.#O^.8&OPPU!F>+&>0Y7)G7._& 1#RM)2LX,*%KND?#TV" MZ#8Z%'4+ I#SCJ@<>[S4*%T)CL %;N73_[PK.0MA;83+6TW6'\^6._F+1>!: M,)TD2\([.U8I7*.2M&9 MG"F4CTB)\GJ3H("5GW(L>U10W<:T-:,3\A!]YS*4*=&_$ MA(!P3H(]5-=+.C7QF)*Q3=H3#YTPUM?_L>(]6%\?V4"N0;:>N8O Q"M)@:P4 MUM^S@TQE<(9&?S AURW)EW(3B91DY4J>3O?$4KT?66"RI,Y_DG'9HYB&.^ 4 MHB"4C1VK5.O89;HSG'%KJ5&G6X?C'V='Z B' U^(X(PM%XNDDM5(9H71UM>J MR 4YJU[@).EJ*@A*R9T20!;42_;X:K"N2.&E> E7LBG[R@959+*V&BC(8,<= M!5N7$ZT<(R):]=<@L(TK+G0M1GNSM4I*=@HE@#E]=(B$:YZ2Q!(9()JNXRCS M_GR)8^/(%<+G'XCCKIQ.U3H<;?=EFR&=@-%P'8 "FZM^.R]$UNN"6TBPK*IT MJ%:*%'&H$&"J40##H\*,)!WW=UVQQ%Y\F5=*%5!/8U6^=^+MB4J<(ZN?=FRM9A3[2F"6;A^V1M=WB7J+R8P\%S\U:90D] M!*7NLDVEFD_ *'R;.I2V8J-PI'CL;<@P,X*#E&946OF*OC\*U#H*8YV52XK$ M&I]ONQ*&S9&N!)DZLJ*[>CZW.]6M@ G!*SCRM51(K/SV#Y:2Q:.*:T+J8K M2I%<-+U<,D[ ]Q+MY'48IC"&K[F'[NW+82!1'O)I'E,*>N.Q %HU-.RX#CID M.BQ]1C!!O_-*E23+WQ9O-_4]BV4T?<_%84DM7D1<:1]Q887"&L:.E$QI(I4U/I'550O(4R=E[- MJE7B&%>N&U+A;!D;HT,?(3'O34<.!$"4:C0.>?@HJHO'+IDB1BEK&O !'#ZH MLA)AC@H+Z^S[(3P#3UP5*/2BTK;B1B=]*2K'7&CK702=OJ4F_!?XG^;L#"-& M+5@Q44Y(5^-N#$CPPK:NV'NA5,$#)V--=G9%IM[H4"J2:UF=J)6D5PHI$9TM M*4.2"SWL*,;-DP.-QDE[4,J$%Y=?^VIDI*?3.Y@=M2C[?6>&W=XE[5A^?220 M &"3 \ARV<>G-W(N?]>OQT-!OE\I]^+,R**5W.4I@82YJI6H=E3E74I>2;9%"0U] QI MR,M^TJ<8:K$%S;6LXK5[ P7?J"*!CS>N2C0GKN M5=YRI]Q?KAYX>..39A!7MY&5(Q50W&^$\]F8+G3.#J20[#[$[!./XZPHT5BV M\XEY^W=M?[8-+4N&T\X:**,>O>D<[. "7;H+/X1@0#N6; <11RC7QRDO>&!Z MAUUTL/3%MK8J?L?*VE6G$D?NZH"F2=*]V#E-0EA.PQH Q2X;\A")E=#W4;FJ MA[/S $SBN9FT+4=%1W"7QT[&!?,RM)^H3S[9A:*VGV]+6IQ)29-2F($=ML^% MDQKK2";C8V.N+L6B3=X#.0!T.#"07,DWZ?Z9)U.D>4)LXU<,L.N(.ZU'TFQ I& MXX1U-P?YQROA3\B"'XA,$ZJ)<\2?\U)U2&7)J8:LF4TVT!2-JXBX(@VWH<@L M9B+-M*3* P0Z;1*%+/DL7Y+:ZDGJ)C%<4!@OD>(G5441G9;@S36TV>L'Z'1^ MQ1'KPV*SB N=TYMR/6FUA2BSC36MN6(&N!BZR1)49J:'R/"B]^A- %2/G)[) M.[@/H4+!.QT/R_A9BQB2'DNQ:,XIJ.G2)U /M^.#6I98RW[J99%4I'R;555%<(85G3):,;[8& M,/8[839*\C[B*J16<*@=AUZI )#TWQ,V?=7%[(2<2Y>V)"MHD3I&%!]'!'7NX_WL5%5FD! M)*FKHX]&)&0N-24@P8Y25[1B*=(E,)TT+M.ILG7VIO1Z0?;MYP!VM**9N7.8 MPI-RN8/=R0S=>'^:&=N7,#L_7U.7(+TWC70IVDY?NWDYCR]M(,GZJF"C"1H# M&U44E3KQ$9))SR3D,?X_- (Z/^^)E#$=E4U1@7_;S9FYPC*1Q8* @;LR&G\. MG3@2?T.^/XQ(*"0VI8/&1[7389[+RCA7F$^0Z-VX7R>-KBQ@V+7H2 KV,RA/ MIP_30312EX9KDB,3&\];"4CUKXY*O_\?:O6]FQ'YGUCK$Q7.I[M/6L %C]-R M>2OWN?N>Y]=.Z649)7(#NR4%EB%JR#OY)8 G5M#V.5)89Q_$(UIGW*E?=:T6 M<5<%%1JI3,LX_-1^YFZCW]0N_ AU']&R::$U]]7RXFW3;, MO5HIH5)0?4!/UMG/TYVV*O=CB__%=G\7Y,KWHRVX*UM1@WE+Q;P'=Y B?PC5 MUG=KTYCI]F-5M9<8[U+G42W0R^)!0CC$16?_8R+K:45*E'-A"IE4Z+RUM7

"_$ #N]V?(ZAC^&5[#P,Y%&[=P\E0 M6,0@-'M@*AXQ<7A;(85U09WPX\X7$XEN*)\,Q$^+LS98*RS/ YL46= 0C>JZ M4FX5H#C-]#,R%@1625DIII>A(5"88=,C$8RP*0F?RI>PB&;((BWF^##/K_TQ M(!_@"7Z'69/:2O(+,#*+(R%NNW"V+ZZ%3I!/.*,Q^7/'??X-U[C=C^ "RC&$ M4DH:%Z0Q#\3=+=6;I&4*1WT=C@F$,5WB;?U!4=O8D.*FG"6'*)G,_+GZCL=8 M87 C+2&W]',A,AV(KIGT/T/^$NO/E+G"[_*9VB:SUF2=M1N(=$")N,XE\%Y\ M#AW']?*L'8 >M M=,VS\XF UOP3-&KA2X%.S6S6DO:9P=)P8[+G").ZP7]:(Z4;ZG) ]5:C4!)1 M,MA'@;;3;I;!!CD3!_>Z*B05VGC8MS0;Z'Z,VL(U#4JRP/ACT;.Q,3>ZBBXM6EHV9*@\&$OZRP,N MR+QV--HF!2RN^H+Q'W2+ +G!%_[7RTSK]V"I/'W"3Y^LIDR,#.X\TUF0HPFA M+[Y>?TTPN_+5W"^>K;_T#U9^ )-_.K2>^TGR3?([\5I#A^G7\-P>:'KYR7AX M&GYP_UI^9QY?EU_K_\23"!:^<(NEM^NOO[R22H[_T)N6?W6^,7UO:OYSK^$G M.WH!WV\-3-]]H /"_X;@U7\ 4$L#!!0 ( -*:8U5__PA,B ( D& 9 M >&PO=V]R:W-H965TH7TP) M8-E;)969!*6U]548FK2$BIL3K$'13HZZXI9"782FUL S#ZID&$?1>5AQH8)D M[-?F.AEC8Z50,-?,-%7%]7H*$MM)!;1F9\Y<)2O$%Q=\SR9!Y 2!A-0Z!D[#*]R" ME(Z(9/S:< ;]D0ZX.]^RW_G:J985-W"+\J?(;#D)+@.60 &*ONSO(J_S&+4_& M&ENF73:QN8DOU:-)G%#NIRRMIEU!.)LL9L^S'T^S)?OTR%<2S.=Q:(G6;8;I MAF+:4<0?4'QE#ZAL:=A,99"]QXO(&]"L$R?'1Z7ET?4#7J-+,EA M62.!8 M;WE[JHY[ :^@&C>F6"CA??, ML2,;8&/9,D!B1F0(T ++LV^I9D"7:S9$W$, MG&FRW6FO 7/;<@U,BI1L#OMR[L0;1;6F##8'37F6>L4 \T&*52W!2_Q?;05= M"@6J\+=*5V#(PRX\K/=?M.Q[%N&./2NZ%]^$#$NQ4;9S:K_:][F;SMY_TKLF M^< UB3=,0D[0Z.3B+&"Z:SQ=8+'V9E^AI=;AIR7U:M N@?9S1+L-W %]]T]^ M U!+ P04 " #2FF-5L)^S)B\& !Q%0 &0 'AL+W=O?1+4";!4VZ?:8EVN8B MB2I)Q?'^^ATI6Z)C177ZP+ OEGCB/7AWO[LS3Y>,/X@%(1(]Y5DAS@8+*,YEK#D\Z$H.<&I9LJSH6O;X3#'M!B,3S7MEH]/624S M6I!;CD25YYBOSDG&EF<#9[ A?*+SA52$X?BTQ'-R1^3G\I;#:MA(26E."D%9 M@3B9G0TFSO%YI/;K#7]2LA3&.U(GF3+VH!;7Z=G 5@:1C"122<#P>"07),N4 M(##CRUKFH%&I&,WWC?3W^NQPEBD6Y()E?]%4+LX&HP%*R0Q7F?S$EK^3]7D" M)2]AF="_:+G>:P]04@G)\C4S6)#3HG[BI[4?]F%PUPRNMKM6I*V\Q!*/3SE; M(JYV@S3UHH^JN<$X6JB@W$D.7RGPR?'=Y]O;#UA4G,-D+?^\EN^^(#]&'UDA%P)=%2E)M_F' M8&MCL+LQ^-SM%7A'RB/DV19R;=?MD>E8E#@A M9P, BR#\D0S&;WYQ0ONDQVB_,=KODSZ^ VRF5480FR'RI:(EP$0B7*0H(Y"B M"Y:EB.8E9X]$?1%=]O=K>//+R+6]$_2CGA V2?(IX3IV&^HE2=9$IR6JP*H? M9T?(6UH@N6"5@).*0_2^X@65%2?ZY#/ZI-Y%L_L ^98=!MOKR$87+"\K"4H7 MF*=+O&87;";U8K/=\RQ[U'*[H>6[ ?K0Z=^6"7@\<^4XZ*H)4 48X&!H@8N$ MU*%J60/+M7V#U1V%:%(!_MF4 O8L)'F5/,"S/BP!$]K0MVR.[9KZXQC=55/) M),X:LC^R B]N=\76*';0)$FJO,JP)"F4-4C:A.*Z<((^G#,NZ3\UH0F'&UE> M[!X:!-#O^8?&D5_.20L51!K!<1W+\2.#X(16%$0]: D:M 1[HP4G":_@A!G% MX%8J*>D$1[_ _P,X)NN#BFJ:0 7FT/X81PD3TD2(YUNAZYM.CZW(C= ?<@&* MV]2TG3:K70A+C2+HS6V*E'C%698AB9^("8@P"@U6U_<;TZ:LJ$P$&#QVN$.- MK"B,T%5>9FQ%"+1)N5 Y18NYJ@ MW/"&H];# 3CD7B.H(WL,WP6V%1OJP;N!%8[LG@P.FPP.]\[@9(&+.>C5X28H MP9ROP GH$6>5WC!G+%U2B,1T!6-3J8 +GRLHE5V9WJ_X1V?Z:Y^=&)BD*55A M,TK:AB30\"NHTMBYK3BX41#(8B&!^6\8M.I"KO'U%6A]:ISZ&9QZ_-.=<%40 M/E^9('5CRXO,SJ:SVCWII6RXKHHY1)EP=0 %W MP&\RP:KF#.3_NM,H4_#5Z MEPPP!F+B;%6>O8Y0<_4@*FH0%>V-J#EG0J@65ZD,T.W.Z(5;K0]V*]"IXH>+ MU:^P.X%6QV$;32%_Z(RJ01FP*0&D5+UB(0A(5>5*=7XJ"8*B-ZLR*"*/W3US[/MELGL&*G#;]C6W[LOO1U!&TV0NY16P#?M7T;Q-^PXIUN[X U/.?DV8S> M2(6!WOY>JC$7^4=VAT$!4"_)(\E8"3DF2;(H&/ASM2LLL$9.APXU%N\" W8' M]NYN<$W04D>@^T+?(0#&.,ETBHH%+7>=$8Q S6ZA=GVHM]&^NV%XC(T_%D&G M0Y11]32U+H>[Q?*YW#BV7,_?M0+FTF"W6\?@!'=WMQ]:P3=4F.OB'?QG20@4 M#?4_'L/@H%N$$"Y0P^>N[)CQS>Z3_EF M#Q?J>;5@$DW)IN$"6J"ZT@S!GW5U&*;ZYM%&<-<(,#2NP2#CY_JR3\"D#W+J M&[&&VMPG3NIKM'9[?1GY$7,8D@3\=9T!JWT4P1]"7E_PU0O)2GVI-F42X*5? M%P2J&E<;X/N,,;E9* 7-+>OX7U!+ P04 " #2FF-5XI-[FCP# #M!P M&0 'AL+W=O F5YK(B"C8SY]J_6D36OC7XA\-6#_;$1I)(^=,*M]G,H980"$B- M16"X/,$-"&&!D,:O':;3'VD=A_L]^IRYUT>!@X3^HY#L',(6M[= M02W+)3-L/E5R2Y2U1C2[:4-MO9$;$F]XN[VZ_7Z]O[ MOU;D;,T2 ?I\ZAF$MT9>NH-:=%#!.U"7Y+NL3*')YRJ#[*V_A[1Z;L&>VR(X M";B"^H*$U"4!#8(3>&$?:]CBA?\QUF,A=@C1<03[0JYTS5*8.?@$-*@G<.8? M/_@C^ND$OZCG%YU"GZ_PQ66- "(W6%B)(3(1/&>V>K5+X#D53<:K?*@F#>9: MD935W#!!!&"!ZF-QG3[YXX=)0,-/Y/^N>&,&R@09V6M;0KH3?/? U-[I4/ / M+,YX14PA&\VJ3)^3^\9H@UN;@40JS"WN-,&7O095DFMR)UG5._]!1F,WIG2@ M&,384_<&+;@$E;>#!BG:G'3=N-?VL^RZ:^&OYMT@ M_,Y4SO%I"]B@*[T8QPY1W7#I!"/KMJ$GTN!X:+<%SF-0U@#_;Z0T>\$>T$_X M^6]02P,$% @ TIIC55QG_[L\!@ M1L !D !X;"]W;W)K&UL[5E9;]LX$/XKA-LM$D"U=4M.$P-)FJ(!TC:HL]MG6J)M MH9*HBE2._?4[I&R)M&S%29-]ZHLE'C.18SEV7DV-: M\33)R76)6)5EN'PX(RF].QE8@_7$]V2QY&)B-#DN\(),"?^[N"YA-&JXQ$E& M4="DQFE/\7@,CX9F$(@DI*("PX8'K?D MG*2I8 1B_%KQ'#1'"D+U?O>9 MK/3Q!+^(IDS^HKO57G. HHIQFJV(08(LR>LGOE_981\">T5@2[GK@Z24'S'' MD^.2WJ%2[ 9NXD6J*JE!N"073IGR$E83H..3JXO3Z<44'=S@64K8X?&( U.Q M-(I6#,YJ!O8.!F/TA>9\R=!%'I-8IQ^!,(U$]EJB,[N7X9040^28!K)-V^[A MYS0:.I*?TZOA-L5J.G<[G4##$2MP1$X&$.Z,E+=D,'GWQO+-#SU2N8U4;A_W MR;0& :)SQ)<$71&(+'1Q#UAC9)NL_=S>O0EMT_F _J_GS;(D1'-\L_051-N^ M H[E))N14GIW/?LMXE3,6<;3-XH($3^6\K9>.TARL"RM&,YC=KAK^EM!2LR3 M?(%2Z8&(,H[>PAF>[30TNA3XE.C4/G&:TY,F_ M6*8V""+,&.&L678LJT-B.>/.7##NSCGC %WFG$#0%SQAWFL!?S!(+*PAT'I.(; !J+%X8S1-8BQ6SW J_3\5V7@;B/ME>*U0 MT>'TD42K@0*DCH-,Q;4:K#:?.V"V@2OV?"#(-N$]G;^OP"L;40[Q81N!I0:$ MY1E6$#S[M"LMUA\TB(?A6!E[AA=XN^@,4)LQJ-]E"8&#"H%5B)WU[A"BNI71 M,HW #]O<*I&Q&W2@HP/I1T.);SBN\VREM;S%A$NCM!*9&WQ+?E5)D0DEP,'U MCB5-82DK2GI+Q HS!(X/G^_BBWW/T,QOFVIB< P[;$UR&D555J42E3&!\ATE M6// @0T9WE7*@@49/#C<<,+>RBN"V(8?FEH&<[;DW=]R$:*S-%E(A=2P& ?J MN9YRZD[J1^*TB5##][J8"H+-H)WO(278QPYT^UC/Q^OF\X?LPL'K^!82T(+ MO4'<3-H"#V4MDTGK@>"2_4;0MAGNJH9-IXP.W7#+9-!URPX&]E!Q:#OI=XON MBUDK3EA$*X@$4(V\HFW6COY2A'<+P$7LX0S-4B, \,.RI_7Y3^_U]:_\W MJ.ZE5OL%\*=54:02[1#CYY@MT2>XRVK;OI,ZV7#::"$H-PVQK2GH%^ZE7+U^ M[F[/U\^]N^_&$9W>N\FJ>G,@35?@)$9@.(0S$6D,J=5&-%<96*HJI;F%2SJ% M\.EAV7HA$A+,A?/F)A2]'(?Z.7>@CYC)Z>Y7D(W)=C> ]>1\G1NH=U- MF*[;S17[/K>U6'3&(6^N>H#[:(ES2 _";2_JCX[9H=\WU<[&L?T>A <-PH.G M7+:_8%Z5=5,E,*]C%%VUJFV#:_])-TMAI10\*1@F#.'UWUWKPS/M\&Z;A^6\ M#D*!L)>_2K:*KU/6(_AMZQ:+(!.*"OH;?;TLS#%H".IJ]PUYW7;5L6VWE12V MMIVN"YUSVX1;AN5;ZL:V072@R^@VR&$8J-N]S@;;<,==,L=T5#)_"YFEP-%R M7'5[("N#*#0$SZ$=:97Q'.6(YE6]#Q3X03:=G1,M5P-.*TB@W NNH-<[0I=9 M47$)[-45O_&V99B!>=AAMB>WA$UN"9^?6[2.YK',TG_.'_3_0?\?]+\Z^D?* MIY2,E OYP0ANR*)7K;^J-+/--ZG3^E-,N[W^H/4%EXL$I$G)'$C-8> -4%E_ M)*H'G!;RP\R,&PO=V]R:W-H965TSU21Z/UJ MKDKXSZ2JB\3 9ST=ZGFMDK295.1#&@3AL$BR M%$52WW]0>75[.""#U4=6DU%5_64_SM/#06 %4KD:&\LA@<>-.E%Y;AF! M&/]>\ARLE[03N^\K[I\:W4&74:+5297_*TO-[' 0#5"J)LDB-Y?5[9]JJ4\C MX+C*=?,7W;:TD@_0>*%-52PG@P1%5K;/Y&YIA\Z$*'AD EU.H(W<[4*-E!\3 MDQP=U-4MJBTU<+,OC:K-;! N*ZU3KDP-_\U@GCFZ.CW[?'IQC8XO/J*STR]G ME\=?_SP_.?X'.K_X].7R\_'U^9<+M'.=C'*E=P^&!I:T$X?C)?L/+7OZ"/L8 M?:Y*,]/HM$Q5NCE_"**NY:4K>3_0K0ROU'P?L0 C&E"ZA1];Z\\:?NP']/>I MW7+E?JXVDM[I>3)6AP,(%:WJ&S4X>OL'"8/W6V3F:YGY-NY'5Q"9Z2)7J)J@ M258FY3A+F0F:FX'->U<8Z$FDUA;@RVJ?8]J7? M_A'1@+U'+_UY6DY!SU&..:!:-VF MM$'J#I*=5AB5D X?TK(>_ CFS/63GTZ B]N=,J^K26;03EYIV!(C!8&L()[' M5:&02>Y68KE[B>"(B%U74LRE*^T.PR2(7&I7.N#+1; +=G%$V!FI4H&P+AN8 M)$*/, 3+B/BH):<]A1$TW$47X)*E39:&U+]*$I0 MV%*19S3T802H&<@^81$&_'GX$!(W# BFD1LS.U;B?MA 62]DL!O/31 9'K M!%@]D+V0(>)!/VB Y3VV;F+=W8Q"8.81]G%HB$(N= MS? &"0;(W1UX#!T8$3B*Z#/A@5 L G?S28]+^L0S89C"?N@'$&XXN@R!7]"3 MCH0_H90 ^RH9YLBE4-E)Z9/=( M(["(HE[%A 1T\( 0AW+&(X' G'IBWR-!9-/2[LNK*5S@> 4E!0UB'$O9&1&V M# TZ X^A!@V!DCVWJ" $QQZ$D-]951";AJ.>J.'ZUH<&0=R/C@3!CZ.&P*&O M7) K9[,2FSP\'ZH00'2^7-1@P(\^ ()$T_2VPD!8_J=AR E"]D+-0"-?4C$ M 4P\A4X$@=Q/ K HE3U1XY>4&W;I!](DL&F:=E=INR9V!U<3L!=L;3#9/"GO M(8#'*KMIFHG[6QIA8MT($[T;86FFD^FT5M,V;F%DB1:^)M=6MH]U[_Z_(-<> MZ8H6?]53A=NR%=5M[ K<0\C#K?4!9$41>G;3>(1^A;F9D]VV=WFW0OZZ:DQSYI6X\]T MXTE5%!"R66?[O$%@3;[A/LQDMS:' SKEZ*RZ47798(+C#ZA[/*A$9./UA\-A M4T^A;R;+,Y,I0#I?*2:Q##R(YI9&EE+PE^:\,U5-ZV0^NX>TX6KWO<^/D)ZT MR<8O0\?5LZDN_[[H!MDRDMW6%@\:N.@$$(?*C&^#-T(C++BG21) G>H99C%$ MU':$(U >2U\M@&/N5HD$BBX)@.@+DQ['\]4Q_-5B'(1 R+H@QS=.FT @< Q) M; O*Q2&FL6MO#L=E3^8B7#2_%VR'.<(YIL)U%Z5NB6UI.?C@A;GPER'=;]31 MP0NWH'OL0/WZ\ [V<["1/N"TL''JIA33<"O_1;Q:E(-2B'<3D^V7=$$OQBR(MV$< MU ["\^,%A!7Q_-#'6)-3MD,<'$*I)R%1[W&5AO'+;$ 8E'"<=ZT-AQ(1;"_A&,!7Y!YG)(Z(+UE#91>(I\ZHU-.>@<.HIUB' MX!#TD?KMZ4;IJB'Z:I$-,D 8=4\Y4'*SKLJ48TG9UE.JP-)SO03.C\S38X@A MZPGY9/G&["\KOKWBI0V!XPOSX*\KWYZOHS72<5$M2J-1D=RCLC(H2=/5K3=C M+:E1NK"OJ :Z%,!GO_'4>3G.%RFXS1+:RW&;C4-XYLW]+YBHBR3/T6BA >E+$J#9VS8C.Q4-OR27+3^_='R;'C=EG: M?3C<%TNDR$>D^$CT9"_DO4H0-3QF::ZF3J)U<>6Z*DHP8ZHO"LQI92MDQC2) MJ0B*+K5.6NH'GC=R,\=R93:QN*6<34>J4Y[B4H,HL8_*?.:9B/W5\IU:L M^"[11N'.)@7;X1KU]V(I27(;E)AGF"LNXQ <' (;=[61C?(CTVPVD6(/TE@3FIG85*TW!<=S4Y2UEK3*R4_/%C>K MV\^W?ZYAN5C!^M/-:@&=Q7+=A_?&'WG79^(<-'$.SJ'/UG0#XS)%$%O(RVR#TLSV MEF@8OV0"2RC/BM$D8A %T\I5D>\WP'I<(8M# 61:G1T)='0(L0\Y04 M,5#:I[(^']>[-Q>!%U[#_S7>)1(1LHID:$C6+-U2J*=7ZI'(I-&>I6%4K?T6 M:6%T?N_W#0TKS<=OS9[OVN$YZ$24B@Y?]0 ?(T*'@H!LV8!EHLRUZL(MO<,\ MIX(A=%*A2%-#O(7QJ"5<#+R6U+GH>4'8-NZ,>\-@W(4?KZ=+[>R'/=\_HOM! M;^2-VN+EV&^+X:4/B^V6WEG#3TLM>FF!WJ[H'D1A7E]E64<;:LDC0[QJD>V9 MC-7Q)(?'78?A\,DI^L'U3_+K?Q1TGRG\+GQ\=@BG<$8OXYQZVMQ6"\I0[FRC M5500HG75C1IMT\MOJA9V-*]^!+XRN>/$F!2WY.KUQT,'9-5<*T&+PC:TC=#4 M'NTTH?\1E,: UK="Z%HP&S1_.+-_ 5!+ P04 " #2FF-51:GIC#4" "_ M! &0 'AL+W=ONJZ(BF@PF+ :J#J)&.\PE*%/'=%S0&G!E25KN]Y=VZ% M"76BP.QM>12P1I:$PI8CT505YK]G4+(V=(;.:6-'\D+J#3<*:IS#'N37>LM5 MY/8L*:F "L(HXI"%3CRM@F8:.IP5!"8G4#%B] MCC"'LM1$2L:OCM/I2VK@^?K$_F"\*R\'+&#.RN\DE47H?'10"AEN2KEC[2-T M?B::+V&E,$_4VMP/$P.7[A[. +Y_!>!W -_HMH6,R@66 M. HX:Q'7V8I-+XQ5@U;B"-4?92^Y.B4*)Z/-[DN\7OZ,GY:;-8K7"[39WN], MM$>;!_3T>(_FF]4V7O] []$>!*Y4>S>HF7>V9 MK>U?J?T)K1B5A4#W-(7T7[RK?/1F_).9F7^3< _U (V\=\CW?!\)J_8&[ZB_ MI)'A'5WE_<_W);>69'R91$_75-0X@=!1XR. '\&)7K\:WGF?;T@<]Q+'M]BC M=5,=@".6J4FI&9>$YJ<+$)>T6K:)8=.#>XS\P#V>"W#/FJH"GIO1$2AA#96V MO_K=?CICVY1_T^UHKS#/"16HA$Q!O8$>!F['Q0:2U:9%#TRJAC?+0OUA@.L$ M=9XQ)D^!+M#_LZ(_4$L#!!0 ( -*:8U7!U)/1)P0 -0A 9 >&PO M=V]R:W-H965TY &Z@$2; M.T-![BW++-CCV&=7),5)]LN6T-CG69+N9)92[&\**(YD35%T.?;# M1)I-BKPUG4W(@4=A@M<4L4,<^_3Y!D?D.)54Z91Q'^[V/,^09Y/4W^$'S#^G M:YJEY-JR"6.W)T<-6A0>X+2,2*3W0LR^I9X># .(DK.&M!'";EM_]4#<0+(/,T M UH%:*^!?@O0JX!>5Z!? ?VNP* "!ET!O0+TKL"P H9=@5$%C+H"XPH8OP;T MMA>GG-ZN T M^S7,.#Y;W=OS._>?^2=W=8?F=P9:K=:07"<'5:4W9:5:2Z4]M"0)WS-D)AN\:> ],:]J M H&4J%N-6E[R6N-N"V&%\%O*Z]"7>Z]%UKQ=TN?6_'O?_WWA<7#]W9-.S5T=@K M?+T6GYGPD#\C-RG7RGS-^?HQ*X-7/IED.*3,@92:DS(*4V9 R!U+F0LH\2-D"2'868_TZQOHB^^PC M3G9\C\@6;" MGACLZ?TV38K!_6L' A5RS )XT.,OBYQ_(AIXU^]T/#>OWI(F0$I,R%E M%J3,AI0YD#(74N9!RA9 LK.@TNN@TJ&W4SIDC$'*#$B9"2FS(&4VI,R!E+F0 M,@]2M@"2G<78L(ZQ(=1V2BAZ;VQ!R@Q(F2D>+\%6#+(5-J3,@92YD#)//-BB MK1U0,\Z"9E0'S4B\V_.?WMSM"0WOC19(F0$I,R%E%J3,AI0YD#(74N9!RA9 MLK.@&M=!-8;>[8TA8PQ29D#*3$B9!2FS(64.I,R%E'F0L@60["S&5.7G>9$" MM=\3F]X;7J V ]1FOC%FXU'KG@^T'3:HS0&UN: V[XT1[PU;M]D+J(:4 22_ M.'N-,=T5UP,8"L@AX>7!3YU;7T&8%P?OK_)OU&M7;&ULK99O;],P$,:_RBD@!!);TO0/,-I(;1-8)=96ZP8" MQ LO<1N+Q"ZVTX+$A^?LI*%#;=BDOFECQ\_OSH\OR?6W0GY7*:4:?N895P,G MU7I]X;HJ3FE.U+E84XYWED+F1.-0KERUEI0D5I1GKN]Y/3TFH_7<.+ M1:;L+VRKM9X#<:&TR"LQ9I S7OZ3GY4/>P*_?43@5P+_7X%_1-"N!.V'1NA4 M@LY#!=U*8+?NEGNWQH5$DZ OQ1:D68TT()8P%AN6G+7>P/.0:L(R]0)5]>138!QN4E$H5*N^JS%_DX4;5[F. MRUS]([F^@2O!=:H@X@E-#NC#9GW+;P"X:%SMGK]S;^0W$J=B_Q)\S_'<\ZM= M5UO;@MM'P+>\4 56CY PX4M)?Q2V?C3-7YJYD= I?/V (CNGOAU(?51&Z!R. M8%ZK%PK+D0X.Y92P\)2PZ$2P>\?4J8^ITT0/ID5^ M1Z5YH'=GKR F/,;7.4W@=U-EC4IRUY+-1VH3>'UWL^]Y8^S'>O[?<%'3BGON M=&MWNHWNO!WN- M]GX0?'668?>0 %&*8NDU^]Q(>ZS/O?_Z?,IPT8E@I<_N7A>04[FR[1<^N*+@ MNORDU;-UAS>TCZ72+,#[2R'T;F "U/UP\ =02P,$% @ TIIC5649G[I+ M @ ?04 !D !X;"]W;W)K&ULM5113]LP$/XK MITR:-@F:-"T,L382!#:01JE:V![0'MSDVE@X=F9?*?OW.Z@ M4H5Q%)V&I9 Z2$;UVM0F([,F)35.+;AU60K[]Q*5V8R#?O"V,).K@OQ"F(PJ ML<(YTF,UM9R%+4LN2]1.&@T6E^/@HG]^.?3U=<%/B1NW$X-WLC#FV2>W^3B( MO"!4F)%G$/QZP125\D0LXT_#&;0M/7 W?F/_5GMG+POA,#7JE\RI& =G >2X M%&M%,[.YP<;/B>?+C'+U$S9-;11 MG9DR@;,"DJIMV_QVGR''4#_] @;@!Q MK7O;J%9Y)4@D(VLV8'TUL_F@MEJC69S4_J?,R?*N9!PEL^OT>O( %VEZ_SAY MN)U\A^GL?L)Q>GW'&W/X=(4DI'*?X1@NLLRL-4F]@CD)G0N;.WBLQ02R_--PJR1J!X/HR%/%[^$ANVJMQ:VUN.8; M'.";\)'843RU1G.<(1\I%H#,W%6&^SU-W M5[)K[! _;,4/_[-X/\]\W'&?A>[>=\+V **S(SAXS,*=:?(7$T-64CM0N&3* MJ/?E) "['?9M0J:J!VQAB,>U#@N^']'Z MY?&D-OB9_9]L9-_@%02P,$% M @ TIIC51DS,J 7 @ G00 !D !X;"]W;W)K&UL?53;;MLP#/T5P0.&#=@BQTF[+;,--&V&]:%%D*#=LV+3ME!=/$F.V[^? M+HZ784E>+%'B.3RD2:6]5"^Z 3#HE3.ALZ@QIEU@K(L&.-$3V8*P-Y54G!AK MJAKK5@$I/8@SG,3Q->:$BBA/_=E:Y:GL#*,"U@KICG.BWI; 9)]%T^APL*%U M8]P!SM.6U+ %\]2NE;7PR%)2#D)3*9""*HMNIHOEW/E[AV<*O3[:(Y?)3LH7 M9]R7610[0<"@,(Z!V&4/M\"8([(R?@^;RXYHN)7L%RU- MDT5?(U1"13IF-K+_"4,^5XZOD$S[+^J#[]Q&+#IM)!_ UN94A)6\#G4X B3) M&4 R !*O.P3R*N^((7FJ9(^4\[9L;N-3]6@KC@KW4[9&V5MJ<2;?K)Y7CT^K M+?J,ME#;:AMT+\*_=D7[< >&4*8_IMC8: Z#BX%Y&9B3,\S?T(,4IM%H)4HH M_\5CJW*4FARD+I.+A%MH)V@6?T))G"1(![47>&=C"6:>=W:6][^\3V4;2.:G M2=SL+'1+"L@B.QP:U!ZB_/V[Z77\_8+$^2AQ?HD]?^SX#A22E9V#5BI#17TH M@#ZE-;!=>38WEOL\2?'^6 ^:AD.JO:#H5$A.V%"]XRGX^S=A);[ZQX&]X&H MF@J-&%06&D^^V+@J#$,PC&Q] ^ZDL>WLMXU]/T Y!WM?26D.A@LPODCY'U!+ M P04 " #2FF-5 8%M3B@% !K) &0 'AL+W=O6 M)<,%)%1>\R4P?6?&14*5/A5S2RX%T&EJE,26:]L=*Z$1:PS[Z;4G,>SSE8HC M!D^"R%624+&]AYAO!@VGL;OP',T7RERPAOTEG<,8U,OR2>@SJZ!,HP28C#@C M F:#QIUS&S@]8Y"V^!S!1AX<$_,H$\Z_FI.'Z:!AFQY!#*$R"*J_UC"".#8D MW8__/TP$RIAQ.-_HJE:#!HW#3*%&5W%ZIEO?H?\@=J& M%_)8II]DD[>U&R1<2<63W%CW((E8]DU?\T <&&A.M8&;&[C'!JTW#)JY0?-< M#ZW"(F9$U M5D+?C;2=&C[[G_T_7_PQ^87\!@P$CTL_ M?A$#=Q>#>[<6.(;E-6G:GXAKNVY%?T;UYG^%ZIK83FKN5#W.CWGW?\Q[4&_N M0:B]5YJ78MDLQE,SY37?XD62SN<"YMGXX3/R#&M@*R!?_M!-R8."1/Y;-6@R M;JN::Q+LK5S2$ 8-G4$EB#4TAC__Y'3L7ZL4PX1YF# ?$Q8@P4I*MPJE6W7T MX1/="A['1-%7D)_(A+.5!$ET3B"0+&.^!2 3G5)FD2(AETH2G58(U18CGBPI MVY(E",D9@[AJ.&3..ZES,SVNAZ[=[#;[UOI0Y]-63J_9;95;>:>M.K;3Z95; M^:>MVMUVTRZW"FJ#\ITA;Q&?/+M=^R@ZHUJ7 MEXIQCD>#+602]\=3)B'"?,Q80$2K"3K32'KS3O] M7+G!5!H3YF'"?$Q8@ 0K*=TKE.ZA)M1:VJ7Z8L(\3)B/"0MZ)U-"JWTP)91T M<^S]"M6N5>Z1OD;)*B%?'B&9@*A\&^L1E\J%2O-0:3XJ+<"BE:4]*#XX[Y1^ MI+^V,N$R%&=,89'VVQ2R?C%!I'BK-1Z4%6+2R MP/M2D=-]KVR+6C]"I7FH-!^5%F#1RH+OBTA.;>7BO?\*J?=^\:A +3;EM,,U M_W$-&-5A@$4K2[VO(CGU9:2[..9A\5[/:!C%D8JTV)FNBNL#I@0-U6[BK504 MM;J$2O.M&'E63&5_8Q=7BYTQ=^E^D*/K M]\[MR*FX[CFW?K;O98_/MN$\4C&/F"0QS+0K^[JK?V>(;&=+=J+X,MV),>%* M\20]7 "=@C -]/T9YVIW8AP4^XN&_P-02P,$% @ TIIC5;H>*C!H @ M>P4 !D !X;"]W;W)K&ULI91=;]HP%(;_RE%6 M3:VTD31\K.U"I "MBE00*G2[-LD)L>K8F6V@^_>SG9"RB7*SF_CKG-?/L?,Z MV@OYJ@I$#6\EXVKH%5I7=[ZOT@)+HCJB0FY6LGUW:AOXUW #XI[==0'6\E:B%<[F&9#+[! R##5 M5H&89H=C9,P*&8Q?C:;7;FD3C_L']0=7NZEE312.!?M),UT,O1L/,LS)ENEG ML7_$IAX'F JFW!?V36S@0;I56I1-LB$H*:];\M:.N-W*4 M$Z))'$FQ!VFCC9KMN%)=MH&CW%[*4DNS2DV>CIQ^ODJ>X&$Z3^;C MJ>DM5\G*S<(D627P%9(T%5NN%3QCBG1'U@SA7:T^<.K6X[OX M)O)W)X#Z+5#_+-"$*O/TLS8C<4*Z 86Y2@\XWL[^LK5X/M*B1Y0VP*SG0NC#P&[0OK?Q'U!+ P04 " #2FF-5#8X7;RL$ "+$@ M&0 'AL+W=O65$6(2&G[,GD"<-HF25% MH6E;5L.,$(F-;CN[-F7=-DU%2&(\98"G4838KV\XI-N. 8W7"P_D:2W4!;/; M3M 3GF'QF$R9G)D%RI)$..:$QH#A5V-P.YKT)OV1',WFO7EV%0QZ\QZX L.?*4GD\@F XB48 M8ZG%?P43Z[@K,T2(-$0,#PH.0\I1A\'F !2(A_R)O/\X& MX/.G+^ 3(#&8KVG*)21OFT*6HTB904[]VXZZ?8XZ3JZ!8WT%MF7;FO1^=?H M!S(=9NFPG&Y*$0LE[4)).\-SSN -_WP<33/)>I,!& ][L^'=]_$ C.ZG#]]_ M9&+.=$7N4%T]JGJ*;WB" MPQY&/*,=M@H_O[;[!A_:$KN2:PD@!.(8!3A=[= M6R2-EYB!%8E1'& 0*K-HUW>'U\CPU'ZSZ7JVY;;-S6%)IT&.[3>*H!)5MZ#J MOI&JU^Q^RL_EU"E 36$F 5B% ZW]O%SH! M6J?[A-7PCNRJ"VI:>K=":_]:MRHI]VF4I$+NPG>(+;_]=_LWARV]PAS+/W:P)LQNN+9W MQL/[?@)6-Q3Z+K/:NY6(%R];36CE^O=-"G0_QKN5S<_%(M2$5A9AW^_ ZH;G MW=X][6*D=9UCZ^JBX)D>#>Y;'5C=Z_12^;^-+D@H6X0Y2X-GGK<-6#+?5U3I MY,I?N'@1:T(KZ[%OGF#S8YQ<:P]5%UI9A'T7!2M[E/<[V3_]!P2MXZ9=%V6U M6D=.-@]."M0QS3UB3R3FDLU*IEG73?DDL-W)QVXB:)(='BRHD);.AFN,Y-\[ M%2#OKR@5KQ-U'E&L" B"0 &0 M 'AL+W=O# M2($D&E++4*';9SY\YW9Y_[&T*?60S MT6N6YFR@Q9P7/5UG80P99BU20"Y6%H1FF(LI7>JLH( C!< MOI)-J=,G*YXF.4PI8JLLP_3W$%*R&6BFMA4\),N82X'N] N\A!GPQV)*Q4RO M6:(D@YPE)$<4%@/--7M!6^HKA9\);-C.&,F=/!'R+"?C:* 9TB%((>22 8O? M&D:0II)(N/%2<6JU20G<'6_9 [5WL99ARXOOJ +E.1H'I,5$Z2LKW.Q(>F6'E;.#TOGK2/.V^B>Y#QFR,\C MB!KPWFE\]W_XX#3>M$X0Z"(3=3JL;3J&UDG&&10M9!M7R#(LJ\&AT6GXCY"W MD&$JN-D4CX]9]S]F/3@-]R 4UAOA>[&TZ]*V%9]]A"](+; MS7AYI?=8@4,8:.+.9D#7H#F?/YD=XUM39LY)YIV3S#\G67 FLKV,MNN,MD^Q M.WL7"Y072U->2Y:.8I&==>W8IJBH]6ZZWNJ8=G=?QWNK<]L]T/$;;'5O]W6" MMSH=PZAURE#H.W=X!G2INBU#(5GEO*SY6EHW=%?UL0/YT.R-S :Y9_;\LE__ MHR]?#_>8+I.&ULK99M;YLP$,>_BL6J;96V\@Q)ER"E2:M5:KNH M2;?7#ER"58.9;9+VV\^&A*6!1)6V-^"'^Q^_.^M\##:,/XL40**7C.9B:*12 M%I>F*>(4,BPN6 &YVEDRGF&IIGQEBH(#3BI11DW'L@(SPR0WHD&U-N71@)62 MDARF'(DRRS!_O0+*-D/#-G8+CV252KU@1H,"KV &\JF8O);3(T+ T$%&*I/6#U6L,8*-6.%,;O MK4^C^:06[H]WWF^JV%4L"RQ@S.@ODLAT:/0,E, 2EU0^LLUWV,;C:W\QHZ)Z MHLW6UC)07 K)LJU8$60DK]_X99N'/8'M'1$X6X'S7H&[%;A5H#59%=8$2QP- M.-L@KJV5-SVHQI.KV[OK]^F(_NT,WMP^AA?*M& ML_EH7JVBR6@^0E_1*(YY"0FZ(WA!*)$$!/H\ 8D)%>=J_VDV09_/SM$9(CF: MIZP4.$_$P)2*47_)C+<\5S6/K2O!0%CF%HJ-H3P-=@1!\_V('UK2OF_^3L M30;<)@/N*>_1[N!%N8A9+KFJ.\91S(3L/-W:65 YTS?(.G*]P/$&YGH_H+:5 MW0^=L+%Z0^HUI-Y)TA\R!=[%5,O\O:_YENT>(+6-G-"WNHG\AL@_231FF;IM M!:XOK#Q!!7[EC%(D\0MTIL]O4;A!&!R@MHTPUA[UW9TRT+N/BDZF/OY$DN2H[S&+J8>RV)YTQB MJIIHS4W_WNI=C/U6N?I6OY78MI7K![W#$C+W>I7^3[C'?*42A"@LE&UL MM99M3]LP$,>_BI6A":2M>6B;M*R-5%K8D !5M&ROW>::6#AV9KL-?/O920B= M%C) Y4UB.[[__%44IMSW%\.\6$6>&H&)N+<,2WBA(&#P#RO.QY5I/ M [GKF>,2AF_"20R[TV M,J&L.+\WGA=9;J7A:&6N"E+#R MC1^JA=@S\+P7#+S*H%@(NW144,ZPPN%(\!P),UNKF481:F&MX0@S65DHH;\2 M;:?"Q=U\?G5^?7ZSG%RAB\N;R75(7J';?4%WFF 6@S1T:RS$(V$QVF&Z!<0W**[B:,(M97O-LN;W M.)497L/8TO4O0>S "C]_->&6 M@GXA:'Z^7>AV'=?KC>Q= TBO!NF]&@18U(Y02O5?B="O$?JM".<,1/S8Y*_5 M[IT9\FLJ_V/*RO\ Z*"&#@Y=5L&_.?6&W:#?G--!#3(X7%D-WH0PK!&&_RDK M'3]HIWH%](Z%IIQ)O7?K;A-#J]8[L^8ZS[NR\S'%5ND>F'OO-'$/76^5XGZV M@]ZP.=7N\QG@MN[6;ZNW2LMO1;#W#EES8;G&0L LJ-X M5IR[*Z[T*5XT$WUO F$FZ.\;SM53QQSE]4TL_ -02P,$% @ TIIC5?!D MQ%AL! "!< !D !X;"]W;W)K&ULM5AA;^)& M$/TK*_=4W4F]V+O88*> 1.#21DI2E)#VPZD?-F8 *[;7W5W@KK^^:^/8&,QR MKLP7L,W,X\UC'AY/?\OXFU@!2/0M"F,Q,%92)M>F*?P51%1G(W'QA6R@A"\&4*0=7;!L80ABF2XO%/#FH4WYDF[A^_H]]F MQ:MB7JF ,0O_"N9R-3!< \UA0=>A?&+;WR$OR$GQ?!:*[!5M\UC+0/Y:2!;E MR8I!%,2[=_HM%V(O =LG$DB>0'XTH9,G=+)"=\RRLB94TF&?LRWB:;1"2P\R M;;)L54T0IS_CL^3JTT#ER>'SRW1Z_^7AR^-L=(]N[QY'C^,[=?0\&\VRJV@R MFHW09W0;Q(&$SZ'2?([N8DGC9? : AH) 5*H@-\X$P*-(K:.U3F-YVCD^^MH M'5*I,M1U+H-_:?;3?9R I$$H/JFTE^<)^OCA$_J @AC-5FPM5*KHFU+5EC(T M_;R.FUT=Y%0=D%RACO4+(A8A->EC??H$?)6.LW1<33>5HH6LI)"59'B=$WBY M7/:M@ZFCLD9X^ XU@..:!Y'&5WG;3!ZF@Z!4U'2_,//@>. M&$=3SN;KW;_A#?7?0K9$7Q\@>@5>VU1:U*9-U1)818!N(4#WDN;JMJE#2V 5 M'7J%#KV6S=4[ZL>>9Q]ZZTQ0A:I;4'5;LY9[_/UN[]!9-4&$D'J27D'2T^O) MZ1S0(XU :(VD16G:0"V!50K&5GGWMRYII1R])2G:0JMJL3<)X9;ME /N=R%V M/(P/>O5L6)5P.6-@[:V[D:ERJ H'R_8.;543YGI>[P33<@K ^C'@D<4^BQ)0 MPHZ6'$ ]!TB]Q_2 C3NK);1J^>5<@>V+NDP[MC36HB6TJA;E\(+UT\O_<)ES MW+HVL0X[]TQ4E6XY:F#M';R9Q[H_1+0N"G=.$"UG :P?!B:P4<_DB:(Y W\5 M,S4-?D?94_D9HVEA&S=72VA5$%<;:7 M40]A3Q!F%,4J2/0VTR,V?J1O":U:_]YRX[+;C7;7&Y?8;Y!RM"%M;SARP,KN MP,6V=]B[Y\*JA,MAA+2WY0JKFWIDQWQ ^4+X-8 MH! 6*L^ZZJE:^6[MNCN1+,DVEZ],*K]EARM0SV@\#5"?+QB3[R?I,K18?@__ M U!+ P04 " #2FF-5?Q%6T\8# !O% &0 'AL+W=O3NOL MVO=5O -&U(7(@)LG&R$9T:8JM[[*))#$!K'4QT'0]QFAW!L/;=M"CH=BKU/* M82&1VC-&Y.L$4G$8>:'WUO!(MSN=-_CC84:VL 3]-5M(4_,KE(0RX(H*CB1L M1EX47D]P/P^P/?Z@<%!'991/92W$4UZ9)B,OR!E!"K'.(8CY>X8;2-,6^#EA?L5&VT(4=YOBI++/EUL7BXF]W-5]$#NI_.H_G-U)26JVAE M6]%MM(K0%W1/.=7P)34I3-"4:\*W=)T"BI0"K4R'B FIZ3_$YGH!DHH$_70+ MFM!4_3STM>&:C^C'):])P0N?X'6%9H+KG4)W/('D__&^F6,U4?PVT0EV BXA MNT"=X!>$ XP=>)TJ<1V+USV!][M,0"(AT4**9%](;$+BIU1LT;<9L#7(O]Z; MMA,U?P>O549B&'GF)5,@G\$;__A#V ]^=7#N5IR[%KUS@G.YB \G%O';@^F/ MIAJ8>I=ZMP7JO8IZSYGN=^5%.7H%(M_7EQLOM)$.8OV*6-\)M)(D 30G#%2U M[NA?-#.I9GOFE((3N&$^!Q7M09M2&+1 _;*B?OG)4G#CX2(2]1&S6XZ#XE5% M\:J1*,C+65$X@1MF-@QJ-PC:E$6)_LGLC[PL_&1EG 'L%Z$NC8/_RC M.R"SZEM[TZ50+/9<%]=!56MUFQ85=TAU]^(J;D;DEG*%4MB8T.!B8+(HB]NM MHJ)%9F^4UD(;B=GB#LR)1^8=S/.-$/JMD@]0W3&._P-02P,$% @ TIIC M5?)1#[J; @ QP8 !D !X;"]W;W)K&ULK55= M3]LP%/TK5H8FD(!\M0Q8&BFTP"H!JFC9'J8]N,EM8^'8F>TVY=_/=D)6M-!U MTEX:?]QS?,YQ"3+ M7)D%-XY*O(0IJ*=R(O3,;5DR4@"3A#,D8#%P$O]RV#?UMN K@4INC9%Q,N?\ MV4S&V<#QC""@D"K#@/5C#4.@U!!I&3\;3J<]T@"WQZ_L-]:[]C+'$H:P<0-(!@7T#8 $)KM%9F;8VPPG$D>(6$J=9L9F"SL6CMAC!SBU,E]"[1.!5/ MGR:3N^O[ZX=9?IB-T>'"$#A!A:);SE<0LDY&KM$)SCILV:JYJ-<%[:J \1:%WC (O M"#K@P]WP$:0:[ENX_Q;NZES:<((VG,#RA>_P_6'Z&-T*+K7WZTU*5QEA2W3+ M>5812H_0]V0NE=#_RQ]=QNN3>MTGF7?U4I8XA8&C7T8)8@U._/&#?^9][HKA M/Y&]"25L0PEWL<8[LWRFJZSCBXL@[$7N>MM3 M1]7Y1?"[ZHW87BNVMU/LF)V4@J>@[\PD@46:(_W71 K2G''*ER]=@G=R_NM= MU63]+5^A[W6[ZK>N^GMT\1"#TEA3'43!#HKL*2Z)RL4]F0E54F-5=4Z MT)5"FON@D@=1&%X%)66")+&WS502RXWA3.!,@=Z4)57O(^1R-R079&]X9NO" M.$.0Q!5=XQS-LIHIJP4M2LY*%)I) 0I70Y)>W(P&SM\[_&*XTQT97"4O4KXZ M99(/2>@((^=EO+"]5X*_EOEIMB M2'X0R'%%-]P\R]T#-O5<.KQ,>5DAEJ#<^HD:JL "IR6&!6",GE M^MW:,TZU9BN&.9R.T5#&]1F< !,P99S;)N@X,):T2QUD#<%133#ZA. U3*4P MA88[D6/^;WQ@BVTKCO85CZ*C@'.L>M /OT$41A$LYV,X/3D[@MMO;[+OZ(IF."1VZC2J+9+DZY>+J_#G$=*#EO3@&'K2::OJMM5\ MM%5UVVJD??);.\H5=IT.E54GOO:)W6K8)F&O'P?;+MN@\W!+5&L_GAHRN1&F M?L.MM=T :?WP/]SK]3&E:LV$!HXK&QKVOE\24/5(UHJ1E1^#%VGL4'FQL%L, ME7.PYRLIS5YQ"=J]F/P%4$L#!!0 ( -*:8U68_E/9B ( ,(% 9 M>&PO=V]R:W-H965TLFEII)6F@W=J% M2*$4%0DJ5.CV,.W!)$=BU;$SVT#[[V<[(642\+:7V&????=]Y]Q%6R%?58&H MX:UD7/6]0NOJSO=56F!)5$=4R,W-2LB2:&/*W%>51)*YH)+Y81#<^"6AW(LC M=S:3<236FE&.,PEJ799$O@^0B6W?N_)V!\\T+[0]\..H(CG.4;]4,VDLOT7) M:(E<4<%!XJKO)5=W@VOK[QQ^4-RJO3U8)4LA7JTQSOI>8 DAPU1;!&*6#=XC M8Q;(T/C38'IM2ANXO]^ACYQVHV5)%-X+]I-FNNA[WSS(<$763#^+[2,V>AS! M5##EOK!M? ,/TK72HFR"#8.2\GHE;TT=]@+"\$A V 2$CG>=R+$<$DWB2(HM M2.MMT.S&2771AASE]E'F6II;:N)T/'^9S28/TX>G13*!T?@I>;H?F]U\D2S< M*0R310*7,,2->< *,UA@6G#!1/X.YT/4A#)U 6= .4PI8Z;2*O*U86;Q_;1A M,:A9A$=8W,)4<%TH>. 99O_&^T91*RO)D/X?SL MX@1NMRU7U^'VCN >+(/[DQ7\FF*Y1/G[D/R3J+;Q[E1%4NQ[IK,4R@UZ\>=/ M5S?!]Q.<>RWGGD/O'N$\HIQJO)R8OS^#,=>$YW3)$!*ET-*>&'\8:RS50>J] M_T#]NJ5^?;+<8WY929&B4F#!B4P+(#P#_5%\B2DC2M$5->JT,!VY>Z$/IT.R MZL2W+K&=7)LXZ'0C?[//UM_KJQ)E[J:'@E2LN:Y;K#UM!U12]^6'>SW=ID3F ME"M@N#*A0>>KR2_KB5$;6E2N2Y="FYYWV\(,6936P=ROA- [PR9HQW;\%U!+ M P04 " #2FF-5\0]@47H" #[!0 &0 'AL+W=OZ-*R >5(VIX+!A70R?7NCQW797F6!#5 M$R5RL[,2LB#:3.7:5:5$DM6@@KF!YPW<@E#NQ%&]=B/C2&PTHQQO)*A-41#Y M\P*9J(:.[^P6YG2=:[O@QE%)UKA ?5O>2#-S.Y:,%L@5%1PDKH;.R#\?]VU\ M'7!'L5)[8[!.[H5XL),D&SJ>%80,4VT9B/EM<8R,62(CXT?+Z71'6N#^>,<^ MK;T;+_=$X5BPKS33^=#YX$"&*[)A>BZJS]CZ.;5\J6"J_D+5QGH.I!NE1=&" MC8*"\N9/'ML\[ '\_C. H 4$KP6$+2"LC3;*:EL3HDD<25&!M-&&S0[JW-1H MXX9R>XL++7\Z6"SB>H":4 MJ1-X#PG7*%%I4!4I@:PEHKE0;7;&1.6P,D\".*3^%> X[S^%+[/%,V(HC#$@A-EP?\MH0#&H"VSBVL1>YVWT#?T>$ MIY[W.^J)LGZGK/^BLBE]Q PDT0C'1 &!$F5J7N3)(8TO4OWK?31DOK?ON.<% M_;,_#+E[I6G;XC61:\H5,%P9H-<[.W5 -JVFF6A1UM5Z+[2I_7J8F^Z,T@:8 M_940>C>Q#:#K]_$O4$L#!!0 ( -*:8U4[^YE=@@, &0. 9 >&PO M=V]R:W-H965TU!<3V MNAE(FZ!VNX>B#[1\'1.11(VDX@;8CQ])*8H5,UJ#:"^V2-US> YU9%^.]XS? MB!V 1#^S-!<39R=E<>:Z(ME!1L0)*R!7=[:,9T2J(;]V1<&!; PH2UW?\P9N M1FCNQ&,S=\7C,2ME2G.XXDB464;XW112MI\XV+F?^$*O=U)/N/&X(->P!/FU MN.)JY#8L&YI!+BC+$8?MQ#G'9S,<:H"I^$9A+PZND;:R9NQ&#Q:;B>-I19!" M(C4%45^W,(,TU4Q*Q]\UJ=.LJ8&'U_?L'XUY969-!,Q8^A?=R-W$&3EH UM2 MIO(+V_\)M:%(\R4L%>83[:O:8>2@I!229358*/[[=(4N MIQ>+/\Y7B\O/2_0>S5A6,$'-+K^9@R0T%6_5_-?E'+UY]1:]0C1'JQTK!2ERJ>$GV_4 5H(2$3/VSF*K;0SJ;?NC-1D 0FCGJM!/!; M<.+7O^&!]\%FM2>REO&@,1YTL<Z2@(QN[M MH0%;&<8#W)2UI(6-M+!3VD*(DN0)H(0)*9#*F=&)-E0DK,RE-745970@Y7V( M\2.]EJ)H-+2KC1JU4:?:9;F6>B]MHJ*C]=0VACKW+5FV,B\:AG9A@T;8H%/8 M9R9!H"MR1]8I(,G0E.0W GW_!-D:^ _T#UH!S] YNF D;Z9M-CK7>6[H>R)K M;/)*$IE7>=P>U<^[G/KR>RUC9A[^&?VNLUNC5=3][[ M8FN;/VA3\ OB6X,/DQEBE&3 <8/'03N_)]N1_@=NI0[X/?#5I*K M.^9!=H6V>[EG/[G_H\G #UT&#OJ-;6?7\FSS/;&US3_T,;B[D?F/V(9'W5,T M>MQA68K\XP;+/3@"Z//7)\*O:2Y0"EL%\T[T@8571YIJ(%EA3@5K)M49PUSN MU#$0N"Y0][=,A;H>Z(-&<[",_P502P,$% @ TIIC59P6&$V- @ <@8 M !D !X;"]W;W)K&ULK55=3]LP%/TK5H8FD(!\ M-:5E;23:[@.) :)E>YCVX"8WC85C!]MIV;^?[:11"Z':PUX2W_B><\^Y3FY& M&RZ>9 Z@T$M!F1P[N5+EI>O*)(<"RW-> M,[&1<%5CH4*U>6 G!J005U \_K MNP4FS(E']MF]B$>\4I0PN!=(5D6!Q9\)4+X9.[ZS??! 5KDR#]QX5.(5S$$] MEO="1V[+DI("F"2<(0'9V+GR+Z>1R;<)/PALY,X:&2=+SI],<)V.'<\( @J) M,@Q8W]8P!4H-D9;QW' Z;4D#W%UOV;]8[]K+$DN8-&"MH""LON.7I@\[ +_W#B!H ,&_ L(& M$%JCM3)K:X85CD>";Y PV9K-+&QO+%J[(Y^Z_/\GLKUNA&TWPD/L\;Q:*JXP[3)9(_L6:0;$ M.O:]8<^:%UWTVK0]8;U66.^@L!N0$FT/H^3"OIX\0[0]OE0?7Y?L MFC?:U1-%OO=*=5>6%_:[14>MZ.BPZ#UQ6]E=(J,W31N&0_]U:]]F#:(H'+P2 MZ>Y,!#.-OV.Q(DPB"IG&>><7FD;4$ZX.%"_MD%ARI4>.7>;ZIP#").C]C'.U M#&ULS=U=4]M(HL;QKZ)BM[9FJK+!EM_G$*H"ZA>V MDDTJS)YSL;47BMT&56S)*\L03IT/?R0C:-HV;2O\R>Q;Q\FVV,&GY)],LG\=%^6E^=;Q< MY":>K#>:SX[#5JM_/(^3].CT9/VUS_GI2;8J9DEJ/N?!.3T\6\96Y-,4_%I_S\K/C1V62S$VZ3+(TR,WTW='[]F^Z MW6I56ZQ?\M^)N5T^^3BHOI>O6?:M^N1B\NZH54W)S,RXJ(RX_,^-.3>S6465 M$_EWK1X]#EIM^/3C!UVNO_ORN_D:+\UY-ON?9%)W]6M;1\%XM2RR>;UQ.8-YDM[_-_Y>_TT\V:#=?6:#L-X@ MW-@@#)_9H%-OT#ET@VZ]0??0#7KU!KW-[Z'_S ;]>H/^H2,,Z@T&AVXPK#<8 MKG^Z]S^.]<\RBHOX]"3/;H.\>G6I51^L ['>NOP1)FD5WLLB+_\T*;S#A7K_^\6GOU\&?PW.'!?E'*N1CL?U M?.3]?,)GYM,.@X]96EPO Y%.S,0%CLMO[O$[#!^^P[/0*WZ,\[=!:_@F"%MA MN&-"Y_[-WR_*S3NM]>;MX!^74?#+GW_=P40',.%H+R/\S-]6:2*Q MB,0$B4D24R2F(]VUWGGV_ZRO17"1+HM\M8[>/S^4+P@N"C-?[DQ> METP>B44D)DA,DI@B,0UA3O)ZC\GK>?=ZZ^0EC\E[$XRS&Y/&:;%\4R[313P+ M9N;&Y.41:9#'Y7'CF^HP(IFOYL'"Y/.D*,RD6LZK ]YRL4_+C:[S;'5U'91K MCJG7G+"U*\/>>37-,(E%)";NL=X:J\X);D[[)\8Y>%'L5[+@[#W?"J]DVJ:2A*+2$S<8^WVDU@.W@YZ&\DDAU0DIB',2>;@ M,9F#GYO,O\7I*L[O@O;]4H\=0CG[R MKG(UN_-ETCN=IIDDL8C$Q&CKH+*[D4=R.$5B&L*B@"M4TI;EQ?7*= MO?T'GIX_7*#>F5+OQ!JGM+V=A.[FD5V$CBE03:*:0C5-:6Y(0QO2\(\)J3UE M]R;5.[O&20VWD]K;VF=%Z* "U22J*533E.9&U78\;7_)\VI1C9-,*GVF0_[R9U! M0]N>6NL__5EN[=@[S9)_KY(R,W<[ M(X*6+[7V]'IRN[49$;14V3'BUE5!M%)!-4UI;D1LJ]+VURH/NY?XZBHW5W%A M@GB>K=(BR*:!B?/TK]FJ"!;Q775(M@PFJSQ)KX(O9I:8:?#9Y$DVV9DIM#RI M-6>W,]C,U/9K-EXBVMM5Q]:^!.TZ4$U3FGL/LVT[0G_;\?XF3F;K6ZZGJW2R M#*9Y-J\.I(/(S.*[\N GRN/;X/?R4#SXD,7IKE3X1VB:"E2+4$V@FD0U56M/ M_T\)-_;0FAK1S9JM*D)_5>$YYCE\'^0?HW':2"U"-8%J$M54K?G3]AJ=0V@[ MA_#'.X?%*B]/ZI8FF&>IN2M?51UQFTEJELOUE83S^X0F_UON #^8ZH6?OLZ2 MJ^J\;^?#)V?^N31.):E%J"9JK1TZ9WZ;AV;HF K5=*T]S:Z]-\(-FVT-PI<\ M&A+\7_!PS.Y[6L0_1N,0H<^+H)I -8EJ"M4TI;FYM"5!>']UEWIL)$2O[*-: MA&H"U22J*533E.9&T!8 H;\ .,_F\Z18IV]J3/!+7"ZQU;7] M=5_-XPZZ];;5VKPF=7[H"R/_#!LG![T*CVH*U32ENIT>U"-4$JDE44ZBF*'P[8A1:]@H]J$:H)5).HIE!- M4YH;05L+A/Y:H/E"BU8$J!:AFD U66M[CSL4.JRF-#=>ME((_97"_M6XOKSG M77G1!@'5(E03J"913:&:IC3W/3EL@]%IH2MO!ZTK4"U"-8%J$M44JFE*:K\\$GRV@/@FH1 MJ@E4DZBF4$U3FIM66Y9T1NR*C?8BJ!:AFD UB6H*U32EN>\7;7N1KO_)CM=8 ML?U#-HTIJD6H)E!-UMJ^(QV%CJHIS0V@;46Z>UJ1'UJQ#[E1VC]PXQBBSX"@ MFD UB6H*U32EN6&U34PW1!?L+EJPH%J$:@+5)*HI5-.4YD;0%BQ=_S,D^Q;L M0];G^@V?.IOKS.8;DYP?_,K(/^O&:4*[$E13J*8IS4W3D]\7LJ>T?N'$0 MT4H&U02J2513J*8IS0VKK62Z0W:%1GL65(M03:":1#6%:IK2W C:GJ7K?RB% M6*%'.Z_-;CUM_-SKMD^8T;X$U22J*533E.;^ED/;E_3\?0FS]!YZPNR?3--] M(:I%J"903:*:0C5-:6Z ;=_2:Z/+<0]M45 M0C6!:A+5%*II2G,C:%N4GO]Y M%F Y]H_0.)5HL8)J M5DK>T]/%'HL)K2W,#9SJ3WPO?=^I"EDS*.%U4*O\;I MM^#3=%KF<7*_D/_RX>+LTY=?F_;/_DDUSBCZ: NJ"523J*9035.:&V1;U_2Z M[.*-%BZH%J&:0#6):@K5-*6Y$7SR>][]S[\0BS?[*]M[.Z\!M[=/N=%Q!:I) M5%.HIBG-39SM5WK^?N6B:;S0,J76AD_3M9DKM"%!-8EJ"M4TI;FYLBU*[X4M M2O.CP@,:%O^D&J<3;5A03:":1#6%:IK2W"#;AJ7'-BP]M&%!M0C5!*I)5%.H MIBG-C:!M6'JOWK#X1VB_/F*=R,M/LER^[9]?I!/S/;B\C1?[']_WSZYI M6%$M0C6!:A+5%*II2G,3;8N9/EO,]-%B!M4B5!.H)E%-H9JF-#>"MICIOZR8 M^9&' ?N[&X?M.R?\1!]P2[)]PX^2B]0ZJ"523J*9035.:&W);[PS8MT4;H-4-JD6H)E!-HII" M-4UI;@1MOS-X];=%JT?8NHEW\ZJC?R:-\X96+:@F44VAFJ8T-V^V:AF\\'&> M5UW7#[XZA!8\J!:AFD UB6H*U32EN<&W!<^ ??QG@#[^@VH1J@E4DZBF4$U3 MFAM!V_@,7OWQ'_\(C5.)]D6H)E!-#@Y\T$FAPVI*? ^ M^)#%J7>Y]3--4X5J$:H)5).HIE!-4YH;/5O&#-DR9HB6,:@6H9I -8EJ"M4T MI;D1M&7,T%_&7*1)D<2S(%L5RR).)]5ZN\B3\E1F$<]V9A"M7E M0C51:[TG MJV&[M7$]6Z)#*E33E.9&R[8N0W_K\L7<9+.;*E#U^;2,Q\DL*>[\RRS:O:!: MA&H"U22J*533E.8&T=8TPRZ[S*(E"JI%J"903:*:0C5-:6X$;8DR]#\C\W"- M[VN6E]M6^\1Q7 Y7[@QW!A"M4% M0C51:T_7V-[6$HL6(ZBF*B*?VRS MR#_[QJE"BPE44ZBF*VB%ZQ^R\:=?/UU^\USB#::Z": M0#59:PT/0!0Z"4UI;MAL@3'R%QC>9?F .Z;]?./LH7T&J@E4DZBF4$U3FAM) M6WR,.NP2C%8>J!:AFD UB6H*U32EN1&TESW[!Y;@>V_KR;#A8/,.Z>=> MV1\.-TYT_7-LG!VTJT UA6J:TMSLV*YBY.\JFJRHAY[H^H=LO(M#&PU4$Z@F M44VAFJ8T-Z:V^QCUV546[3I0+4(U@6H2U12J:4IS(VB[CM&>YT0:K[)HV8%J M$:H)5).UMO^80Z'C:DIS\V6+C)&_R(C,++XSDR#*X]M@?9_R^B[E@^ZC\M.- MHX8^FH%J M4DJBE4TY3FQM$V(*,1N^*B[0:J1:@F4$VBFD(U36E.!-LM6V]4 M'W-W4NW1FF:0Y2*6$P]&U-$<1&?GLQ-?F7.S6RV M#,;9*BWYJM!X_&J0FVD5O]_>AT?'Y9;VY: MB<^K1WL?/BFR1466P2R*;+[^\-K$$Y-7+RC_?)IEQ<,GU0"W6?YM/;W3_P=0 M2P,$% @ TIIC55,Z0^KQ @ P@H !D !X;"]W;W)K&ULM99;;]L@%,>_"O*JJ96Z^I)KN\12TW87:=&J9MT>ICV0^"1& MM<$#G*3??H =DFD.4:/UQ0;,^9\?''PX@Q7C3R(%D&B=9U0,O53*XLKWQ2R% M'(L+5@!57^:,YUBJ+E_XHN" $V.49WX4!%T_QX1Z\<",W?-XP$J9$0KW'(DR MSS%_'D'&5D,O]#8##V212CW@QX,"+V "\K&XYZKG6Y6$Y$ %811QF ^]Z_!J M%+:U@9GQGBWA!K),*RF.W[6H9WUJ MP]WV1OV#6;Q:S!0+N&'9#Y+(=.CU/93 ')>9?&"K3U OJ*/U9BP3YHE6U=Q. MVT.S4DB6U\:*(">T>N-UO1$[!E&TQR"J#2+#73DRE+=8XGC V0IQ/5NIZ899 MJK%6<(3JJ$PD5U^)LI/QE[OKR=T$O4,?@0+'&2*T"K7>LM-;D)ADX@R=J''T M+66EP#01 U\JUUK G]5N1I6;:(^;2S1F5*8"W=$$DK_M?85LN:,-]RAR"DZ@ MN$"MX!Q%012AQ\DM.CTY<^BV['ZTC&YKWWZ "G'C BN[=K.=_GFN1(%G,/34 MWR& +\&+W[X)N\%[!U7;4K5=ZO'70L5&$KI F>8[1ZPP 9(,P5H"39J W9*2 ME^ @ZUBRSK%D$K@ZL%A"$YQ;]0!]",(7 MW@0VR^ZGFP45/Y7]>%4Q51[+"%"E3)E7)8YJI*C*!ZPGJ^YPQN>EH![9LC?\ 4$L# M!!0 ( -*:8U5QS5NY4 , '8, 9 >&PO=V]R:W-H965T=^D/5&Z@D['A=X#0N0WXIKKD9VK;(D.5!!&$4<5A/KPAW-!QIO M -\)[,7!/=*9W#!VJP=7RXGEZ 5!!JG4"EA==C"%+--":AD_*TVK#JF)A_?W MZG.3N\KE!@N8LNP'6)O)+VS_ :I\0JV7LDR87[0OL:$"IULA M65Z1U0IR0LLKOJM\." HG6Z"5Q&\)B%X@.!7!/^Q$8**$#PV0E@1PB8A>H 0 M583(>%^:99R>88GC,6=[Q#5:J>D;LUV&K0PF5!?60G+UE"B>C#\F%XMD@=ZA MCZ#V!R5WJF+5]60&$I-,G*HGWQ8S=/+Z%+U&A**O&[85F"[%V)8JO!:QTRK4 M91G*>R"4CSXQ*C<")70)RP[^K)\__!=_WL]WO1X!6_E6F^?=FW?I]2HNH#A# MOO,6>8[G=2QHVD__G,HSY+B&[G;Y\;SHR?.BS_OI,TA5]$[ZD9=^78B^T?,? M*D13?RD3LJNR2F[0S=4OWY$H< H32[U=!? =6/&;5V[DO._:E9<4F[VD6/*2 M8O,7$CO:S:#>S:!//?Y< ,>2T#7*>O>U5(F,BOX&[F(W]/RQO3OM$!8"9.>[MM0) M#U+QW48FTS;&]8<-W]J8P;"!23IB#0<-U\*6M9'CU)@C,Z+:C*C7C"LJ05DL MD?*B+*.,X!N2$4F@TY.HM4[]8CRRI UI&M)&A U?DW_'F?=F]L0B&M2^#7I] M^\HDSA!576G_X1NTS]5YV#A7TP[0( @:GK5!87#>/'P=(#]R&K[U9O:_OMD' M?5$.?&TZ6*'\V%)9?IGJV;I)OC"]86/^TAU-W8[YF3M*RA[XKWS9D7_"?$VH M4#NP4J&5 LL)T93=,JA[/W&[4'P/@&J">KQB3]P,=H/ZK$?\! M4$L#!!0 ( -*:8U55.&U$!00 *$/ 9 >&PO=V]R:W-H965T]<5 MV1KG2-RQ$A=J9M[7NSFB!3.>&B^O?#QD%62D@*_ M<""J/$?\UP.F;#MRH//VX2M9K:7^X(Z')5KA&9:OY0M7;VYC94%R7 C""L#Q M!H1ICB3V@12?QL\Q91J2PK' MCYU1I]E3*QX^OUG_:,@K,G,D\)31O\E"KD=.ZH %7J**RJ]L^PGO"$7:7L:H M,+]@6\LFO@.R2DB6[Y05@IP4]3_ZN7/$@4+8I>#O%/QS%8*=0F"(UL@,K40<"[P;XGN];U*?]ZH\X4^K0J,-C=5=YH'&#W[C!-_:"#GL3(; 4 M0'$!SP3-"2628'$#GK%:P."?R5Q(KE+N7QO3VG1H-ZWK\%Z4*,,C1Q6:P'R# MG?'OO\'8^\/&^T+&CKP0-%X(^JR/31'?LN5M)3! QB4VOK61V!C1;6(SAGX" MHZ&[.21BD8I@DC121PC#!F'8&Z9(DF(%*%;%JR)D_@'=!\V&.+QDA"YD M[(A_U/"/>B/T?,3VEXUK;2 Z\'N8IH.3X+2%HBB)[+&)&VSQ>[#IT BA>ACG MN)"@9%SW;1OBN 4F3<+D!'%;"'I)G-HA)PWDI!?R-R81/2^%DO;^01S$)R@M M4G$0!G:4:8,R[4WZCZ0PW;A.>7!%BHQ6"]6F50O&/RI2YMK!NG<9B36C:BDO M.=M@O:**I,#R^M[&*KUD85S(V)&/!HV/!KV1?#K##S8'#-J%X'OA253;0H&? MQO:@0F\_>;U>R),LJ_**FH&[P,HG&4%=);(S=0CAUH_\4Z V,3@(.YHN/#@D MP#/JY.Q,=[;4RYE[9CY_K@!>Z?Y.YF'K>0=)*T,;PM%G0F^/Q; _G-!)\[SIS!L MGPE@')V.88M4DG1,8;@_.<#^HT/=7Y;OUND-CK@74^I(Q^?:B;VG- MK7S\'U!+ P04 " #2FF-57U+@_HX" #7!P &0 'AL+W=OVEZH6>Q_V 'AR!(![ 'XM(.D!B1/:5>9D71--\DR*%DD;;=AL MPWGCT$8-Y785%UJ:66IP.O]V<[FX6:!/Z+(LJ366,'3'N]UA;?YP#9I0ICYF MH3;I+"@L>NJKCAH?H5Y ,T))=(9PA/$ ?'X:?@V%@<<.'A_"0R/2*\5>*79\ MR3&E8%9;#8G** M/?_1@#3+QE>(.;%GJ'7;&$I$-F9J!>;@V:/M0Y &60]Y#S =.#&V+LQ/DE]2SGA!;S=B]-I<*]@ZA7@HUZ\ MCNG<,PVY>N#%Q'LQ>>O.**DJQ)IK9 )AR(8N0QRY%/9UV.31*!K':19N]D4> MB<-3'W<@(?42TK7I VP,POA="[CKW<_5N>_P502P,$% M @ TIIC5?=G(2Y\ @ G0< !D !X;"]W;W)K&ULK55M;],P$/XK5IC0)D'>6UA)(ZU-$$A,3*L&G[WDVEAS[&"[[?CWV$X: MVBVK*MB7V#[?\SR^BWV7;+EXD!6 0H\U97+J5$HU$\^3104UEBYO@.F=)1P '77W B]\GJ6DM3 ).$,"5A.G:M@DL?&WSK\(+"5>W-D M(KGG_,$LOI93QS<' @J%,@Q8#QN8 Z6&2!_C5\?I])(&N#_?L7^VL>M8[K&$ M.:<_2:FJJ?/1024L\9JJ6[[] ET\(\-7<"KM%VU;W]'80<5:*EYW8'V"FK!V MQ(]='O8 FF<8$': \"D@?@$0=8#H5(6X \2G*HPZ@ W=:V.WB4 /CN. MOSR"]W30?>3A+O)9>)1P 8V+(O\="OTP'#C/_#C\>Z%<>)O]U#[WB=W+0Y_L M!)[\N<_(#7N?-CYOK][4(%:VT$M4\#53[9WKK7TON;(E](E]%DSFP8 ]T[VG M;15_Z=O&=8W%BC")*"RUE.]^T.50M,V@72C>V&IWSY6NG79:Z?X)PCCH_27G M:K

&PO=V]R M:W-H965TUP*=6++@ ,>2VYT".O M,*8:^+Y."RBI/I<5"%S)I2JIP:&:^[I20#.75'(_"H+8+RD37C)TFU6]K$S?*GDVOV2 MY2HV\$A::R/+53(R*)EHGO1UY<-& N(<3HA6"=%N0O>-A,XJH>.$-LR?,/QY>DU.3SZ1$\($^5[(6E.1Z:%OD)-%]M/5 M_N-F_^B-_2_)O12FT.1&9)!MY_NHI144K06-HZ. 4ZC.22?X3*(@B@[PF1Q/ M?TC-.0E"EQX>H=-I_>TXO,X;>,[)BK*,H(^$EK(61J-G*:]1KS7/%$!*H+I6 MSGTB<\)Q"(0S.F.<&09Z<,C89N/NX8UM]0]T15,8>5C>&M0"O.3CAS .OAQR MY3^!;7G4;3WJ'D-/'BI0>,+$G*36K=R>NUS)DLAVP3ER\'@UT+&#ME?6(NE> M]"^'_F)3W7Y0+PQ[;= 6ZU[+NO<^UCD35*1PA',#W-NBL\-X/\2>YD-\XY9O M?)3OK:/U+K[Q'IF+J+]#>#^FVPT.,^ZWC/M'&;N60 M:"H'7M."BCFXTMJK&3?[+R>HOW&PO=V]R:W-H965T M"OFJ"@!-WDI>J8E3:%U?N:Y:%E!2=2EJJ' G%[*D&J=RY:I: LUL4,E=W_-B MMZ2LB7 M>BIQYG8J&2NA4DQ41$(^<:X'5S^,5@JW;&Q&2R$.+53'YD$\L!A!PZ/@I$5]+&:J&B'%29QU,^*.E9TBA7VL:(] M5A ,@GY6W+'B4ZRHCQ7OL?QP=("5=*SD%"ON8R7[K$'H];.&'6MXBI40+"JB M"\"FFVN0?>CA_NN+#F0YZLBCH^1GH2DGW%9]3=^Q$>O>RA[M?Z5AXL7_P=V= M%F6Z_1.5*U8IU,\QSKM,T+ML.F@ST:*V76LA-/9 .RSPIP/2',#]7 C],3&- ML/N-I7\!4$L#!!0 ( -*:8U4(NBNXO ( .X' 9 >&PO=V]R:W-H M965T2==ET:"EFU(;$.4;9_= M]+:U<.+,=EKX][M.0E3:T"&T+XD?]YR<8JL36*,M1VU@JX: 1X M+PB80GE&?.<#\1S/ZX&/#\,GD"''N<[B-J>CRX77Y\&H^_P6^+@U]3AIH MT \UYVVH2IK!R,(#I4"NP4K?OW,CYU.?K_]$]LREW[GT#[&G=T)33K@I-"GI M(YY*W5NZAB6J64P_6*=N$#M18J^WG1S\UAN=!)V3X*"3:U!J2*[RLM(PQU]1 MXZ^J=)^7AB?<\G+J.K&SX^7@U][H)>R\A*^N"F=TQCC3#'H+$^Z9IO=6-S4WXCGYW16?_@502P,$ M% @ TIIC5>4T+5:# @ R 8 !D !X;"]W;W)K&ULA95M;YLP$,>_BL6JJ96V0B"!I"-(?5BU2:U4->WVVH$C6#68V4[2 M?ON=#479XB9O@I_N__N?PQWI5L@750%H\EKS1LV]2NOVPO=57D%-U;EHH<&= M4LB::IS*E:]:";2P037WPR"(_9JRQLM2N_8@LU2L-6<-/$BBUG5-Y=L5<+&= M>R/O?>&1K2IM%OPL;>D*%J"?VP>),W]0*5@-C6*B(1+*N7H^&!W4 MK.F>]+6_AYV ,/P@(.P#0NN[ UF7-U33+)5B2Z0YC6IF8%.UT6B.->9/66B) MNPSC=';W_7+Q?4&^DEO6T"8'<@>8H\*%>ZK7DFF&$U%VR^2.T27CW>+I#6C* MN#HC)X0UY*D2:T6;0J6^1E]&W<][#U>=A_ ##PMHSTD4?"%A$(;D>7%#3D_. M_I7Q,:TAMW#(+;2ZT0>Z?4HN0UW@V!UH"N%"M32'N8=ON@*Y 2_[_&D4!]\. MV(H&6]$A]>P13+$4(,V]FI1=!CN)V$J8PMID83A-_8V#.QZXXX-<1$4N5!OP]E2O6*)0O,2PX3]"Y[/IF-]&BM;UJ*31V/CNL M\%,#TAS _5((_3XQ[6_X>&5_ 5!+ P04 " #2FF-5&*QZ:K " #J!P M&0 'AL+W=OVT\.]WG82LM*&KT+XT?MQS?,Z]]76XXN)) M+@ 4>0H$[*14Y%2\7D/'5R+"-UX5[-E\HO6!&84GG, 7U6-X) MG)D=2\)R*"3C!1&0CHQS>S@.='P=\)/!2JZ-B78RX_Q)3VZ2D6%I09!!K#0# MQ<\2QI!EF@AE_&XYC>Y(#5P?O[)?U=[1RXQ*&//L%TO48F2<&B2!E%:9NN>K M;]#Z\31?S#-9_Y)5$QM@<%Q)Q?,6C IR5C1?^MSF80U@#]X!."W V1?@M@"W M-MHHJVU-J*)1*/B*"!V-;'I0YZ9&HQM6Z"I.E3R^GY)A[X1.($6[771W ML4"-5;^$:%K]FT;U@&3G!P W-Y;J1G4=]T,B@,S+8:>06 MI!R2F[RL%"3X/U3X/Y6JSTK#XZU9.;9M?\/*SL,^:,7KK'A[U"1MKV!3&S[+ MV)SJ7M=;'F_+D^,[P88G;ZN&MFO_#7JCU>^T^GND?5P)[ KJ7RK]+95G@;4A MR4SV,Z3[VTFZWW?/>_0'4$L# M!!0 ( -*:8U4:;?V9_P, .,/ 9 >&PO=V]R:W-H965T/P\D4U-1H.AI.X ,,XS1B;XC0PP3G5,)#1!(!EP.4A$;B"BZ M)C"F4:1.2+1[DQPQ)E;&+-$+@4,DQG.]NU=1:Q@%VS8]0(K MX 33"E2]:PB\(( ODP%<7ES!/R6>]>U GT)9 <\W0/X&R.)@M9"_:G"K1W ' M2L8$9]!7O#E]RDQH:U5A0$48,9%QA.\?U1H828S%OV6BYEO4RK?0>>!.I"3$ MMJ,NND#^@D[G]]_\AO=GF0YG MM3HU:H4;.A=[I2Q9&60R40^*_TG'HY0MT@ MZ!SUT@G\EONR2\&ZR8D4Z@6%NI7"YXQ$=$[UD1*Q!,9!'3%RK@:ZG)-D@2H' M2O@^QO@)>>EQ6C?XU>,\$]B>%HU"B\;[!W?CG&J<"6Q/C9M"C1MK9(S)*XVS M&'"31,-=68@ BGR4$6'CGXV5_.Q^E@+8N8SE1$YU#P?+I^OC(AE8N4>-'I']P.JY^*RZ?=_;UAO>^R>%]1YG$N1<:/N*[%1@ MOC4D)@J1AJAO/V6S4KIV@"K$IFPJY68U/95;L.46_%2X[^6ZU%SX=1[DJIJ5 MX9(FB[U%UYMDJ#.A65$J3/ 3"<_NXJD2;"L\WUHRG4F"S5=#_ $+SH2 E+R5 M*E(M4<1K'$KR'E6>ORWS?'N=-[3R%JKTNRCEEJ,V=FN_0V+YDMN=)7YERS[W MU]UIEV+D"]-%"N5#ELB\MRA&BTZU:_JS@_&>[F!-&[:%R=O?,>$+JIA$.%>0 M7N5&U6$\[RCS%\E2TY0],:E://.X5%TX><.RAJ370TH,$#^,HN@L%93)($^];Z#11!^1,PD(3.KU#<^"\YM;%10(J#025:L%4@F&Q6^MS> MPP6@=_\*(&X!L=?=)/(J'RC2--'J1+2+MFQNXTOU:"N.2?=35JCM*;,X3*?? M9[-\/@#B:,X)@Q!7"'M=Q?5]Z3]_[ZHEVZ@X1Z\S.T&;VAJ6L H ML)-E0!\A2-^^Z=U%7ZXH'W3*!]?8T_E!;$$3M2.;/#,OJ6OPMQ[OIOB8]I+P M>)DRO.@P 7KOY\B00ATD-LW6>;M1'3<=^C>\F?,9U7LF#>&PL]#HYI/-JYO9 M:0Q4M>_7K4+;_7Y;V><&M NPYSNE\&RX!-T#EOX!4$L#!!0 ( -*:8U4X M"2*)- ( +D$ 9 >&PO=V]R:W-H965TP&// M.7..F2$X,OXB"@")7JN2BM II*S'KBN2 BHL>JP&JDXRQBLL5GZGC=R*TRH$P5F;\.C@#6R)!0V'(FFJC!_FT#)CJ'3=TX;6Y(74F^X45#C M''8@?]0;KB*W8TE)!5001A&'+'3B_G@RU/DFX2>!HSA;(^UDS]B+#A9IZ'A: M$)202,V U>L 4RA+3:1D_&XYG:ZD!IZO3^R/QKORLL<"IJS\15)9A,Y7!Z60 MX::46W9\@M;/G>9+6"G,$QUM[NC>04DC)*M:L%)0$6K?^+6]AS. [U\!^"W M-[IM(:/R 4LD#S MV7J^C3=/BVG\'2U6C^OM,GY>K%?H,]I!KKZ$1 MJ^T!?Z(<'D)B4XF/@2J5$ M\[E)6W5BJ_I7JMZC):.R$&A&4TC_Q;O*06?#/]F8^#<)=U#WT,#[A'S/]Y&P M:F_P#KKK&1C>P57>_WQ?LG2K@N1D: M@1+64&D[J]OMYC*V[?@WW0[U$O.<4(%*R!34ZWU1=;D=%!M(5IOFW#.I6MTL M"_5O :X3U'G&F#P%ND#WMXK^ %!+ P04 " #2FF-5S!PB]24# )# M&0 'AL+W=O8[YO3XVEM"7UD M*P".GL(@8FUMQ7G"Y H6!;AE&50^Q M'VE.2YV-J-,B:Q[X$8PH8NLPQ/3W)01DV]9,;77W:JBD .6ZGOBN N=BCIT6)5M$I;1@DPL5?846\?(C62<3 M3L6M+W#]X0!]1;V( V6P M%!7"T00'P-"Y"QS[ ;L0U_<3%YV?7: SY$?H;D76#$=SUM*YL%#JT6>I-9>) M-=8KUMBH3R*^8LB+YC#/P;NG\8T3>%U$)@N/M0O/I762< )Q"=G&%V09EI5C M3_ 9M3?0[!G0#FO/YDUDUON6%O4@RMT@R MKR"R@P25LP253[$[75'\5+1>T< W$*TA+PT)0U4QR)_(QC$MTVXT6OIF/\#' M8HVZU:@=2KG'4K99J=>M0S'O6,RJFA7[F>W VTKF;>6DMP<]R0M\T1U5)3+T MT(=P"C2W#$]R_FT9%DGF%DGF%41VD)AJEICJ?^P3U2(35"296R295Q#908)J M68)J'^X3M:-OUGC1(MZ4<-^4\$Y))*[I>[--"'2IADJ&9F0=\>37E9UF&PO=V]R:W-H965TK[][[5ER>YT_5:IG);X53 M/JW7\^+WSW*5OUR,R.CUC>_+A\=J^\;X\GPS?Y WLOIU\ZU0K\8'RMUR+;-R MF6=.(>\O1E?D4^IYVX#=B+\OY4MY]+.SG78S<;45R)1?5%C%7 M_SW+J5RMMB15Q[]KZ.B0KP812/G3M[/ MGU;5]_Q%R'I"_I:WR%?E[E_GI1[KCIS%4UGEZSI85;!>9OO_YS_K#^(H0'', M ;0.H'J UQ/ Z@!V:H!7!WBG!OAU@']J0% '!*<&A'5 >.JG%-4!T:D9)G7 M9">'_?>W^_)G\VI^>5[D+TZQ':UHVQ]V"MI%J^]\F6W%?E,5ZK=+%5==WL3\ M2WS]P[FZGCD\_LJ_7WT3Z?3J;TYZG7S]_N7J1_KUVCES;JIY)97&*R>_=[YN M9#'?2K5TWLUD-5^NRO=JS*\W,^?=+^^=7YQEYOQXS)_*>797GH\K5>8VV7A1 ME_1Y7Q+M*8DY7_*L>BR=.+N3=X9X88^?6.+'ZN,Y?$;T]3/Z3*W &[GYZ##W M@T-=2@WU3.WA?WU:?71&P/_[JH#N'$$)Z<4CSM#>>G%-\? M+O[8)Y_^WW-O"8$=_EC8CL=ZRWG8_0T4@D;->?(%-R)$QTZV?$CR+:GD#:'48#XK-FGBV%^ >%^%:%S*0J<;'?L#EJ M_^W,UWE1+?_3NZ7;X_RC,CS/]36Q6',.%0L2%AO*IX&N%61&CH2);OF$4<_5 MI&(8I289F942')026)629I54%5:._*E67J7\X&2R,BDDZ&;WF*X0:ZZA"D'" MXF[Y$Z8+!)F0(V&B6SVC)-#T81A$7-FZ02&:KPJ:;SJ37G M4*D@8;&A?LJT\A-D1HZ$"4/YOCIDT:1B&L7\G@.6R4$I$ZM2KF7UNCG9;V-, M\IAT,H>Z-B:=PZDSC^D*FAE&L3!D[5%Q-UVD[Y,34[[ U?ZZN#%?H%4ENOG. M(I=J5:6&4:%/>SY^XC8-)-?Z!<29+!Y^-[9YK(%#5\%0V@Q*BZ&T!$KC4)J MTE(4K2W=H]XG ?5S:A!*RDC:#$J+H;0$2N-0FH#24A2M+67:2)G^X]AO2D[;K &H9UR*"V&TA(HC4-I@G1;YF<^\?26BVD898ST2+#IK1-[<_VD MII>=,5AWT#X[E!9#:0F4QJ$T00SM]I!UO&'3,$;#OCURTY4G]K9\G#VH=V2Q MS!YV"P>UZBR?5I5Z:10@LL<\A=)F4%H,I250&H?2!)26HFAM.3?6 9F@^G]6 M$V*PE)&T&9060VD)E,:A- &EI2A:^PS5QH6A=A?FE/Y?C6CU!J(PU'IG4WNF MH>J$TF+3%(*. 9= DW(H31BFX+-@HC=R3,.(6KZ8=^&T\3RHM1$]O/E7\UIM M2*:?#6A/.E@S4$?#- %/;QA#4W(H31@F$#)/UXMAD-?3]J.-K4#MM@*@!6// M,'37":7-H+082DN@- ZE"6IR83JG!AE&A7Y?_X4V]@6UVQ=#^R]VW& !0ET. M*"V&TA(HC4-I@G9M#L:8?MZK:12AM$> C1="[5[(2=T7.V.PZJ ^")060VD) ME,:A-$&[)H<71AW5&4:Q(W>WK;K&#:%V-Z2^ZBY[<.J=Z4MJJ.$"I<506@*E<2A-0&DIBM:6 M9V/?4+M]@UC-FZZTB(A^"J&]D,'BA9HUABE0PB*](00U8: T :6E*%I;E(T) M0^T7< Q>SANN8R!^T%$@U&.!TF+#% *B7R "36 M\T-.M+"G&KHN@M)F4%H,I250&H?2!)26HFAML3]TSORZCC!J$.DA0V@Q*BZ&T!$KC4)J TE(4 MK:WIQD%B(6JE!+V\!TJ;06DQE)9 :1Q*$U!:BJ*UI=RX3>RM>WB=:(:RKB%# M/-8Y,(!:2E!:;)A!]R:!T)0<2A.&"3#JZA=YFT:YDYZKRECC #&[ X184AM, M(4;T"4SMA0S6$-04,DW!HVY'15!;"$H3IBE,B'[KW=0TC'AAWST#O<;)\>Q. MSM!UL&>]:AJH'28M,4*-$WG@DT*8?2A&D*+ SUR_E-PP+B]=S% MUFN,&,]NQ)RT=O6Z5U=L[X:IWP+'GFJP4J#6B6D*:O.B]TR@23F4)DQ3\#VJ M7W=@&A8%K$\IC8OAV2^&V1W0E/7.*EXMU\NL?@R&;JJ%![V2!DJ;06DQE)9 :1Q*$U!:BJ*UI7ST> N[ M$7+2\RWVB.-[ZNJG\=BS#%8FU/EXN_P$FI!#:>+M\E/KD+TPQD1/6;5_G,_AW<,3V:YVSR'3WO],/G%B>%^03^G^>6L-?O_XMR_SXF&I M=ODK>:]2N1]#=9A1[)^HMG]1Y9O=X[9N\ZK*U[L?'^7\3A;; >KW]WE>O;[8 M)C@\U^[R?U!+ P04 " #2FF-5Q^G)ME,$ #3&P &0 'AL+W=OL_^,4U>)O.$.1G0Z&NX$.NNU;+ @BSQ M-A)3NOM$\H0"Q3>G$4__@EW>U[' ?,L%C7.P'$$<)ME__#,7X@ _2, -P>X MIP*\'."="O!S@)\JDZ62ZH"PP+T.HSO 5&_)IBY2,5.T3#],U'N?"2:?AA(G M>K/AW?UP_ CZ8P3NAI.[:?_ATVC0_PQ&XX^3Z7W_<309@VLP(ROYL@7HP85<%9C4UR09,D16T;=1Z-OX0U=E^.#0!U[#\1HO7*4-<-U&Y[SPH[:*.<*4A/2@YY?[T;H ME(6HH\UULB$,JSFT+S8Y^'9/XB?"OH/_P/&54D][[M0QRH9,L54E/:CMX87L MF0A#;9U[@D=S@E<737V@LV6IBWI\V81EY0WUI?=K1CUG M6=6'.GM>F61#IMBJ,I=; ^A?RKQ&-Q-&V9 IMJK(Y7X":LOI4\P;G+3"ZN.< MK4I-4,T:6Y;W4%_?#RB3DPD+<@7&-+G>9[^W;VW^)DOY@5$V9(JMJF:Y@8#- M2SG4Z/;"*!LRQ585N=QA0&V!?8I#6[^9)6@'S>"E0XWN"NJ"!I[;/N+0LN"' M^HI_E C">)[S, KC,,'J SG7F]1D@3\PRH9,L54_PY;;"M>YU(=8HQL-HVS( M%%M5Y'*CX6IK[!-,FA,\QD%7:X(7A*D.\OF24K%OJ&.:XARO]S]0 M2P,$% @ TIIC5=+>Q.])"@ =V< !D !X;"]W;W)K&ULM9UK;]LX%H;_BN =+&: ;2U>)763 *G)=@I,+^AE]\-B/V@2 M)1'&MK*2DG2 _?$K7VJ:%,56WE=?$MLY?"3QT&_XBD?2V5-5_]'<%44;?5TM MU\WY[*YM[U_,Y\W57;'*F^?5?;'N_G)3U:N\[=[6M_/FOB[RZVVCU7).XUC. M5WFYGEV<;3_[4%^<50_MLEP7'^JH>5BM\OK/E\6R>CJ?D=FW#SZ6MW?MYH/Y MQ=E]?EM\*MHO]Q_J[MW\0+DN5\6Z*:MU5!YA=G=?44U9OHCK9YL>W];>NNO\KU9J!\:NONKV77 MKKWXI%^_U>\^1Y?O5/1:OW_]\?+#KV\6E[]%;]Z]>O_Q[>7G-^_?1<\B53;Y M[6U=W.;;]%8WTH,=A@R M;,MC [SAL?"OW[K0Z$U;K)I_^[*^XW(_=R.)+YK[_*HXGW6:UQ3U8S&[^.M? MB(S_[NMR)$PA81H$LY+##\GA(?K%/A6^WM\UE-N&F_\?CQ>$$I9E9_/'XW[M MAV4IS1([2O6C&!%I2NTPW0^CD@AF:-9!BL-!BN!!JFI5-&UYY3O*8,NQ8PP) M4TB8!L&L[I>'[I<3"8!$)@<)4TB8!L&LY"2'Y"2G"D"PX=C>1\+4#B:^IR;] ML)":I(<>2X,]IM=%??NGK\."[<9V&!*FD# -@EF=GQTZ/YM(2S)DC$H1DJ:@-(VBV2DR M-I $C4Q0&Z!.#TI3>]KWA<83%Q(:X]!(V*+I]6WW25&7Z]LH7U]'BVK=/"S; M[JVW*X.PT5V)I"DH3:-H=EJ,IR1B*L6!>DXH34%I&D6S4V1\)PDZIZ#BR/YL M)$T2[DY&/&$R29@[&>F'"2:SGD1XPHB0\8!"& M'PAYN6"&^-SV!6CPH34%I M&D6S,V0L(TFG$@NHJ832%)2F430[1<98DJ U"HH%U#M":6I/^Z[T>,*&I8<: MPT?#AF]1K59%?57F2U_'A1N/[3@H34%I&D6STV#,*"43Z0N%.E0H34%I&D6S M4V0<*@W:JY"^[%M:ISRH>\9CX8G*6.PLQRA/%!693!T]\(7QA+(!/3 FCX9- MGM&#;NHQ?*8T3!D]ZJ"&#TK3*)J=#V,>*9]*&*!&$DI34)I&T>P4&2-)PZN3 M(6$0O6^I3'GJ"D,_JG,RQ!6&?A0EDO6$P1,6RU0,"(/Q8C3LQ1QA&'-*(TP> M/1*AZX!0FD;1[!P9'TF3J<0":B2A- 6E:13-3I$QDC2\^!@2B[1_KH(ETA4+ M3Y1PIP?*$\49BUVM\$3%0\NKU#@Q&G9BKZO'HEZOBG7K/4RH&8/2%)2F432[ M:LM8.Q9/I 8,:ON@- 6E:13-3I&Q?2R\!AE0@WU+:^H@.'5F!0M/&&,)DP=@G%K9/CC2,,19A\NBQ"%V(@](TBF;GR)@_-E4%*(-Z/RA-06D: M1;-39+P?.[D.E/7K*$G">JK1!%]N@-(VBV5DP%H]-5<;)H/8/2E-0FD;1[.M"C/WC M)Y=R\GY-)4\2X2Y8>,*$H-)=L?"$$#T^52DGA]H_*$U!:1I%LU-D[!\_N923]\L@.VV(>]K0 M#^NT@0M7&_IAG390(5QM\,4Q00>6+?C1Y7%A%V5KPQAS$0:/'HS0]3,H3:-H M=HJ, >13%6)RJ/^#TA24IE$T.T7&__&3"S&YIR8R=L6B'].['L070Q-7)CSE MG$?G,.VC,]:)AZW3YW)5/.L$X=DJ;SMUR)=>;Q&&C!YLT"4R*$VC:'8ZC,/C M4]5:;]0D9+^R09?&*6RIPK],,GCC+NZX D3 MXFC28E]V;CR4"'NHOC($+4:8-OIB=.BZ&92F430[+\;QB:G*)074!4)I"DK3 M*)J=(N,"Q*LM1="M&^,!$/E4\+8Z1$V$@- M",08GQ'>PN@1"5U0@](TBF;GREA!,54II8!:02A-06D:1;-3='2?EY-+*46_ MKI&P-'6MAC>,R-B5C7X8CZE;7:&]89P/S2N,GQ)A/_5E7;;/-O<[\]WLZF6X M\>CA!ETS@](TBF:GP1@_,56]I(":02A-06D:1;-39,R@.+E>4GBJ%V7J%CDN M/&&"$]I3!%_U918G;LVD+X['(AXX4RF,IQ)A3V4T(>PQH.MG4)J"TC2*9M_S MRG@_.57YI(3:0"A-06D:1;-39&R@/+E\4O8+&3F+W2J%A2=,$.Y^Z94GC-!4 M<%<C1"%]6@-(VBV3DR7E!.55,IH180 M2E-0FD;1[!09"RA/KJF4_?)&EF1NN;4GBDIWO4-YHD@L>I=?>,*2E R40TAC MHF381+TJOW8R<5^75_X#A2Z:06D*2M,HFIV'H[MF3G;;3.Q],[$WSL3>.7,* M RB- 90G%TW*?OVB8+TS! M/&"49<6\PXPDCA/:NT]"^K0I!A^8/QD;)L(TZ MTH2@NPAC1H\\Z H:E*91-#LAQNW)J0HH)=0 0FD*2M,HFGU?76, DY,+*!-/ M920E[K=YX0FC<=:;+GC"2)SU[E*EO5NE-/.+0V)L5!*V4:XXC'$78?38T0BE M*2A-HVAVDHP#3*:JJDR@!A!*4U":1M'L%!D#F)Q<5;EO:=V,G\3N!5N>J$RZ M4PE/$,WE,$RV+FVY3\?.DD[5Z]Y27W9NVNM\^ MQN3WJFVKU?;E79%?%_4FH/O[356UW]YL-G!XUL[%_P!02P,$% @ TIIC M52&&ULI53; MCILP$/T5RY6J5FIC GNI4D#*;;.1FHN2;?OLD"%8:VQJ.V'W[VL;@E(INR]] M 8\]Y\PY9H:XENI9%P &O91DI$S@-/9[:Y7&\F@X$[!62!_+DJK7$7!9)[B/SQL;=BB,VR!I M7-$#;,'\K-;*1J1CV;,2A&92( 5Y@H?]P2AR^3[A%X-:7ZR1<[*3\MD%\WV" M R<(.&3&,5#[.L$8.'=$5L:?EA-W)1WPK9<=U3"6_#?;FR+!WS#: M0TZ/W&QD_0BMGUO'ETFN_1/53>[]#4;941M9MF"KH&2B>=.7]AXN &'P!B!L M :'7W13R*B?4T#16LD;*95LVM_!6/=J*8\)]E*U1]I19G$FWT]EBNGQ"P^4$ MS::KV6:X?IR/AS_0?/FPVBR&3_/5$GU%,Y '1:N"992CN6B:P=WJIPD8RKC^ M'!-CY3A2DK6E1TWI\*W24/50%'Q!81"&2!MJX%\28KUTAL+.4.A9H_\P=$UK MPWISG=6-QD!7-(,$V][7H$Z TX\?^G?!]W2ZE.0>N"[M_2/H74$L#!!0 ( M -*:8U6JA^Y$,@< -' 9 >&PO=V]R:W-H965T.3VW''[Y6A2^^/X?=WG["=Q#E="WFNUY%*>MP6%Q[E(.#L52 M)7'*+R7)EO-Y)!^/>2)61RV_]73B*I[.5'ZB/3A<1%-^S=7OBTNIC]H;RB2> M\S2+14HDOSMJ#?T#UBDJ%"7^B/DJV_I,\J[<"G&?'YQ-CEI>?D4\X6.5(R+] MYX&?\"3)2?HZ_BJAK4V;><7MST_T-T7G=6=NHXR?B.1]/%&SHU:_12;\+EHF MZDJLWO*R0]V<-Q9)5OQ+5F59KT7&RTR)>5E97\$\3M=_HT]E(+8J:$Y]A:"L M$%0K=)ZI$)85PI>VT"DK=%[:0K>L4'2]O>Y[$3@:J6AP*,6*R+RTIN4?BN@7 MM76\XC0?*-=*ZF]C74\-KMGI.1O=D.&(DE-V<7HUO'Q[=C)\1\Y&;RZNSHF8ITI&17:OXNR>_$2YBN(D^_FPK?2%Y+CVN&ST>-UH\$RC(3D7 MJ9IEA*43/JFI3]WU]QWUVSH FR@$3U$X#IS :[[8):&W0P(O"&JNY\1=_6*L M=HGG%]7]NN[\M];9%[=N!2/<#(FPX'6>X9UR,9718A:/Z]+^YSF?WW+YD?Q- MKO@#3Y>$422,@6!6BCN;%'<*>OA,BNOR M^DZ7(6>*S[./=5GI(+."A%$DC(%@5E:ZFZQTG3\\.RLRS\J"R_R4_B^[+B=K MG.\5O'Q*\##P=L,]K2$/V]&N+];?MXO1VF(=+[2+L7I:SS1J];VWZ7OOE45G MQ-Z3#Q=7O]4%TGEM30VR1X#RTY>\BL(&$4"6,@F)65_B8K M?:SD].M^_4'8J4C.NEC?*N57!:>>Y5=8K+Z8MUWXC%N2&IQO1 MR';(S4QR;DTMBQD9T?,S5IC5:KD532C^]G,R-UNXY@C:0Q%LV,> MF)@'3?5QE/\D\<\02:-0&D/1["%A? $_A$LD=#$/I5$HC:%H=F[, M@MYWKDR_0"*A"WHHC9:TJGQWNI69(:I5.^9FN>Z[U^LOGD+ZY&*L1*Z0GO\J M"NGL1^-<(VD42F,HFCTBC(GA]^ *"?4>H#0*I3$4S9&"5.+(6VRE T.^;&P C< M!L8[D9%A.N4)SPCEBTBJN8XW$7?D?:2T?$7IA%R*E?[T&JH(-4N@- JE,13- M'@7&4@FZ<%6$FAM0&H72&(IFY\:8&X'[$8WFJ@BU-DI:Y9[R7E43>_7:6;GS MPU#79L?2F!&!VXQX';7;(==\6C14^X0,2[F@ZD:B-!6&8IF/XEL/(G0 M[4DXU\<[A HYCY60CV2X5#,AX[R0T@J:*^F(K\@'(>]W"C7]GRFN.RZ-GX*& M>BM0&D/1[!%F')C01RMN"/5(H#0*I3$4S!XIFQWQK\X?;^WBY3A:?OIE_^>5*BMU/@MU0@MU1\C4),YVEK$ON=:"G4T8'2*)3&4#1[[!A_*(3OE@FA'@V4 M1J$TAJ+9N3$>30C>,^/F-;OU]\M!X+^&_>"_YRE[+(4ON MR:D4#_S;ZN%47PZ7<3K=2/4R4?JP-MM0UP=*HU :0]'L+)#^H;J!N;[W40VO4M'B;2D;& M^5)[_3*'S=G-&UN&Q7M**N>/_8,3O^8\]0_8^GTL!K]^/$>CK(&]B\]V;P#U!+ M P04 " #2FF-5/*4G<8L# #D$@ &0 'AL+W=O;!G_)3( B>Z+G(JIDTFY.G5=D610 M8'',5D#5E07C!9:JRI>N6'' J1$5N1MXWM M,*%..#%MUSRN7*93Q],]@AP2J1%8_6U@!GFN2:H?ORNH4\?4 MPOWRCGYA!J\&"_A."?B7H/U

-6OE%J)XH<\G55:)T,KS\-/M\%:.; ML^_Q'+U%MSA?8Y/!LUS-(4P30*\CD)CDXDA=_SJ/T.N71^@E(A3=9&PM,$W% MQ)6J*QKH)E78\S)L\$38$W3%J,P$BFD*:8M^UJWW@PZ JSRHC0AV1IP'G<0Y MK(Y1SWN# B\(VCK4+8\@47+?R/T6>?0,>3#6:_2&&;UZ M5O0,K_<$KVT:_/BH;D*7$@KQLRWA);'?3M3KW:E8X02FCEK0!/ -..&K%_[0 M>]=FMDU89!,66X(UTM*OT]+OHH>7-%$O Z$>R13*TI%^#C=UMO N6VT)*ME# MP];OCTWH3=S-ONN=T0]UW28LM@1KN#ZH71]TNG[[/'L[(8?._\&C7/GJU=], M5V0S8OPXXGA8QVOX-JQ]&W;Z-L,Y45\RE&!TP95K&5$S]P;?HW.&>8I^7$%Q M![QU+>D$'^JE35AD$Q9;@C6R,ZJS,[*^Q(]LIL4F++()BRW!&FD9UVD9_\[ M%JM.\J&FVX1%-F&Q)5@C/;[W;YOB65^N*J2ES%BE159IL2U:,SE[>TC_/RY: MW?"#T^0__G3R'WTZ68T9VZ*5]KM[N_D"^-(9+0@7*8:&0WO%(??WQ\DBEK$BV,F<&=TQ*5IAB!C@% MKF]0UQ>,R5U%!Z@/ML*_4$L#!!0 ( -*:8U77"->&.@( &T$ 9 M>&PO=V]R:W-H965TOQ7=*H2-N^).>S_?Q>;"?;&GOO*D2" MAUII-XXJHN8\CEU182WF9:4U#BSX-JZ%O9QBLILQ]%)M+NXE>N*_$6<9XU8XQQITX=7MG\$J6QMQ[X[H<1XDGA H+\@B"7QN\0*4\ M$-/XTV-&0TF?N'_>H7\*VEG+4CB\,.J'+*D:1Q\B*'$E6D6W9OL9>SVG'J\P MRH4G;/O8)(*B=63J/ID9U%)W;_'0?X>]A#1])B'M$]+ NRL46%X*$GEFS1:L MCV8T?PA20S:3D]HW94Z6O9+S*+_^>O'MY@KN)C^OYO 6%KI 2]Q+N!,/,#-. M^F_GX/ 2^5:Y-W WEF9U@E=NBPF)N&AXJ(O..T*IL\4G&-S#*/D"-(D36$Q MOX3#@S?_P\2L81"2#D+2@#MZ!G>A+19FK>5?+ /Y*6I<27)'<*T+4V.G"+50 M)-$!LV<'H45',"D*VW+>K\G2D>5)^?V4L([ NZ<)^.TY=XTHCBT&XSR MUZ].SI*/+\@;#?)&+Z'G7Z182B7I$7@1H1W:1"RJV;7I*=(=[%F ]1NZR9,L MWNPSB?>FQR_BC;!KR3U7N.*DIT" #0!P &0 'AL+W=O M,EEFK*5[:H..#,D,K"]AQG8)>84"L*C>V!1R%; MRX)0>.!(K,L2\]\3*-AV;+G6WO!(5KG4!CL**[R"& /X3F K#L9(1[)@[%E/;K.QY>@-00&IU I8_38PA:+00FH; MOQI-JW6IB8?CO?H7$[N*98$%3%GQ@V0R'UM#"V6PQ.M"/K+M5VCBZ6N]E!7" M?-&VQEY=6RA="\G*AJQV4!):__&NR<,!0>ET$[R&X!T3@E<(?D/PW^HA: C! M6SWT&X()W:YC-XF+L<11R-D6<8U6:GI@LF_8*E^$ZGLRDURM$L63T>VWZ?U= M@N8W/Y,9ND2W-&4EH#G>H62G[J( =#X!"DLB+]!Y#!*30EPHX-,L1N=G%^@, M$8KF.5L+3#,1VE+M22O;:>-_4OOW7O'OHSM&92Y00C/(.OCQ:?[U";ZM)&HL(IC"U5PP3P#5C1QP_NP/G'P)2KI0OG]JQ951VT?E*@2^,KT!H%2MJ:ROH^MM6T_-Z;J'MDG[FCJ M=MACU:[J[O)7ONYU=YBO"!6H@*5RY?2N5 7E=?^H)Y)5ID NF%3EU@QSU7*! M:X!:7S(F]Q/MH&WBT1]02P,$% @ TIIC5&ULM99K;]HP%(;_BI5)TR9UY +ETD&D MU0Z2Y5M0\F.8#5V$YM4^B_W[%)4R:5K*J4+\2W\_HYYR4ZZ6^DNM,K M $.V/!-ZX*V,R4]\7RUJX8LN5L0M^W,_I$F9@?N13A3._ M5$D9!Z&9%$3!8N"=AB?#,+ ![L1/!AN]-R8VE;F4=W9RG@Z\P!)!!HFQ$A0? M#S""++-*R'%?B'KEG39P?_RD?N:2QV3F5,-(9K]8:E8#K^N1%!9TG9DKN?D" M14+'5B^1F7:_9%.<#3R2K+61O A& L[$[DFW12'V L+6@8"H"(@<]^XB1SFF MAL9])3=$V=.H9@-<$Q85V9&X2[#.!.?7XZ^7TS(]>GOR8Q\(I,MQ4NH M+9@F'\9@*,OT1]RXQ/K>8'W)S% #9,P>F#-&+L@UW=)=A45*SC!:)$!N+X#/ M0?WI^P8I[5U^4A -=T31 :*O:]$@87!$HB *_PWW,;DRPZC,,')ZK0-ZB$=N M@"K4"SN57)4Z]O4XT3E-8.#A_U^#>@ O?O\N; >?*RB;)673J3;QJ_WO5OI?J?/&8K9+RG8=_K=K0.Z4R)V:_:_6MWY58'9+S.ZK_>]5 M^E^I\\9B]DK*7AW^]VI #H/GWA'4_ _XSP76LI=(_;V&9S\>+JA:,NQ8&2Q0 M)VAT\%56NWZ\FQB9NQXXEP8[JANN\!L&E#V ^PLIS=/$MM7RJRC^"U!+ P04 M " #2FF-5DGXB_5X% !P(0 &0 'AL+W=O>=Z9):1H@N-O4<@VPU:O!4*T@MN8O>*]C\H.=05?@&.: M_P?[TE9O@6!+&4Y*,(\@B=+B%_XH!^((P'GD +,$F'5 YP+ *@'6M8!.">A< M"^B6@.ZU +L$V-<"G!+@7#M*O1+0N]9#OP3T?P!W0 -U @BB(4O"61HQ^/FKX?8.W%*8A;[P[ M.1]HC 13$:1Y(4@+?,$IVU#@IB$*)7B_&=]OP&M\P*I1,P^C]F0V M$BY0U@:6_AF8NFE*XIDTPW_=QFV@&Q?ATV;X.".-<+<9_C5@%=R0P&?7!&]> MA'O7!'\9[O^_D9__Y[Z?",&JIH^5\UD7^)[Y"SXJ!1\+P=6 MO8Y^:C.3^;-UX]3*D_JS:U'Y$JN>;M:BFDNLG*[I5%8GP]^MAK][V_#S]9C7 M>E$@NPT%5;?I-C1ZNS4QJ"1SSX,_OZDJ'7HJR?SSZ&42D5A=EHA=2<2^62)A ML>3(1&)_/%<;_=TJ$I5D[GGPYR)1Z=!32>:?1R\3B<3JLDB<2B1.8]WR+7\( MY$7(>(<(?Z@%S]MDB0C *[ H*OBO6T89+]>C='UMR>*H+%E4DDU5DKDJR68J MR3R59+Y*LKDBLA.M]RJM]QH3XD'K#[#4>E!4Y>6C*GX7.KB/#LW2NJ9WEJ\- MRS!J"6?2&,VMRE5)YDKB-VV]ENYG*EUZ*LE\6?Q]IU;$S6565M^0)\Q^):)^ MHXC,XXVB(W& M4M&%).6:H>"%UX=Y<7AM/5@2*RH(E;)-E;*Y2MEF2MD\I6R^4K:Y*K93:9OO MTC8;,^:3V#G)DV"(XQ@2"C*N\3PARO-A0><<33&]7=]$FC0[O5FH*ME<>0\< M_>3O+#FJ#,%3RN9+.O2@MVVSGASE9I>2X_OVO]&XV3J:'BVD5VK(NDI#2G?L ME;*Y\A[4GR*4^O24LOF2'DA%(S>KBT8[>ON:(++.7]U37GUM4U:\2:I:J\\# MQOE+\5K[D_'H&9)V7WQ.D+_M?:&ULK55=;]HP M%/TK5YDTM=)*0H!NZB 24+966CL$^WBH]F"2"[&:V)GM0/OO=^V$%#K@J2^) M[=QS?.Z)[W5_(]6C3A$-/.69T ,O-::X\GT=IY@SW9(%"OJRE"IGAJ9JY>M" M(4L<*,_\, @N_9QQX45]MS9545^6)N,"IPITF>=,/8\PDYN!U_:V"S.^2HU= M\*-^P58X1_.SF"J:^0U+PG,4FDL!"I<#;]B^&O=LO OXQ7&C=\9@,UE(^6@G MM\G "ZP@S# VEH'1:XUCS#)+1#+^UIQ>LZ4%[HZW[%]<[I3+@FD@TE!SD7U9D^U#SL XCD, M"&M ^!K0/0+HU(".2[12YM*Z9H9%?24WH&PTL=F!\\:A*1LN[%^<&T5?.>%, M-!G.[F_OO\YA.IG!_&8XF\#99#H_APL8"L,3GI769YAC7"IN.&HXNT;#>*9M MC$Z9HJ7ZQ07\2&6IF4ATWS$V$[_SKJ!G3HU[LV_!\37C8A57+^3B?*4:U<@]8D MKQ2F*MQFM;D#AJ[UO5H?T=U0M?(7FNIBN6-JQ86&#)=$&;0^DB!5->MJ8F3A M^MU"&NJ>;IC2_8;*!M#WI91F.[$;-#=F] ]02P,$% @ TIIC5<)XXZ*1 M"@ 4W0 !D !X;"]W;W)K&ULU9U;;]LZ%H7_ M"N$Y&+1 IK:N5CI)@,9L,07:GD[2GGDXF ?&IF.ANK@2[:3 _/BA9,4T'9L2 MDZ46IP^I+^(BM:2]Q4\DY;.[O/A6+C@7Y#Y-LO)\L!!B^7HX+*<+GK+R5;[D MF?QFGA?BXNS?"62...?"U*N MTI05/RYYDM^=#YS!PP=7\>U"5!\,+\Z6[)9?<_%U^;F0[X9;E5F<\JR,\XP4 M?'X^>..\II%?%:BW^"/F=^7.:U+MRDV>?ZO>O)^=#T95BWC"IZ*28/*_-9_P M)*F49#N^-Z*#;9U5P=W7#^KOZIV7.W/#2C[)D__$,[$X'T0#,N-SMDK$57[W M+][L4%#I3?.DK/^2NV;;T8!,5Z7(TZ:P;$$:9YO_V7UCQ$X!USU2P&T*N'L% M'/]( :\IX'4MX#<%:JN'FUVI?:!,L(NS(K\C1;6U5*M>U&;6I>7NQUEUW*]% M(;^-93EQ$D^LQ_L)N%$ MY.229=]*\N='GM[PXK_D-Q)GY&.<)/(0EF=#(1M4R0ZG3>67F\K=(Y5_RM>O MR,@Y(>[(=_/;R@,S$+/.1%5(FVL@<*$[-Q=\L97%O5!=W].)#Z>;6 M4G=KJ5OK^4?T)@6?Q8*\N2TXEQ$BI*YSJCS[GS0LB]-5NOWHD''&*JID\+I< MLBD_'\AH+WFQYH.+O__-"4?_/&0?4HR"Q#1KO:VU7JWN'3M;5SM>A]NVTG0^V.Q\\,SS9?6MX M&JNP-00I1D%BFK7AUMH0&YXATD:D& 6):3:.MS:.L>%IE+.U<7PX[/S]\#RV MW>'HC+;['CTO.B]E)X]<,<&-\6FLQ-81I!@%B6GFGF[-/<7&YRG21J08!8EI M-CHCU6D>&<_2ZYJQB.26>9(S$6>WLB,LN*Q*D$*>FR?JK8S;.)]U"&)SE;9F M-VJ/KYY[48RJ53=RASX<=+AW[$";*[:V$ZE&46JZZ8I/'!>;!APHC4#5*$I- M]U(!B6/LJ+=F@BZ!#X641LWQ]@/?W;^ =]E2=T7QA=,"&$\+ZPX=;W/%UF8A MU2A*33==<8T3@,,:2C%0-8I2T[U4(.,8._B0L(;"3:.V?SU_!,W'MCL:TPI* MG!8J:8OI:SY=R6W([VM>9-7M5O(NSE@VK_OKE[N?/\^F_%[G/KK.U$JE&4FGYD%#(Y$3CPH7@$5:,H-=U+14B.D1SZZ=E#,:I1:[]_ MAJI6OPFN&,DU,])/S!==[ZE#"0NJ1E%J^L%2'.8ZV!3B0O$*JD91:KJ7.\,_ MYO$?0-_!7(.UN^[!CK[S& E0]>K.*9ARS3#UWM8F*#DU:M&N2_O^]#%JXRJL MM9>'B&JR#O5_NW'MFTQ?#XH]4#6*4M.]5-CCM4Q[LPUBLYZUET<@)QKO7Y./ M;1E&T9%0W9F>UC(:].A\4J%J[KP?- @[>PT[?:T/$O(4"7D^.'"AH )5HR@U MW4L%*IYY0ASE-T)VITM1K*KS\H1,\R&[K$;LX/R%L M.N5E67LOI)F2Z2?-42%7/(GYG'S>W'XV)A H M\T#5*$I-/R"*C+PQ.(% 40BJ1E%JNI<*A;R6.7O65_[H<,\YV$\!4,A!J>DN M*D\!O8_!FO?0.@:@$P)1:OJ$>@5I_@B;3WPHE4'5*$I-]U)1F6^> M% BXV]?4$.D)QM_++^9V6+O6!W_YBK_\EF&GOU9^Z7@'TKS3UF$"G7J(4M,/ MN()-'[P8RH?R)%2-HM1T+W<61)E'UFQ''ALYPUCAQ%RCM3]],**O&-$W,^(3 MDLN;>777TB*W=%O986ZH]4D,A4R4FGZ0%&3ZX.57/I0/H6H4I:9[J?C0-X^< M]3$/S#^R9,K9SQQ0.$2IZ48J./3-ZDX+^A]B5E3@VE52&,<%.I0:KIQ M"NH",]3]C.31[PU7\PY:1P642%%J^L'=>8H'>'IE@'UF!_:A'7V 8Z# ,7C> M],JGP$YP>(;DHV4J$W/;K)WL QL#A8U!"S;^I5).1THR[[-UY$#I%J6F'V]% MMP%X%F@ )4ZH&D6IZ5XJX@R>M_2N2](Y/3RUZT!'!\J7*#7]J4N*+T,S7]K> MO6[D3'>OS37:^H-2T_U1%!G^>HK\Z4MOS/MLFTF@:A2EIA]O19\AF#Y#*'U" MU2A*3?=2T6?8.WV&A^G3?924S4VQ-JX/^@P5?89/I\\KOLZ3=>5EDW[>L6F< MQ.*'.>*A- A5HR@UW6Q%@R&8!D,H#4+5*$I-]W+G(8YF&GRX^-SDA2Q;G:13 M)JNKSL[99L*(6/ '$)P7>4H^R:MC==:2AT?YBD61KVX7]8:S*DG(]'&WB*<+ M,M]<%%E"2B&_J*ZX,GUD,S+-TV42R^]DB7RZVGRQ8&M.;CBO'C$]Y?%:7E]O M?M2J;V:I))=2R!0D/Y:7[WKV85[47\[C!%AV/%!*A-SQ=8V]<&*8\6*XY:QR&>'? ,GA&,IY4#6*4M.]5)PW!B\Y;/0,#RUN7((2'$I-=TD1 MW/CIBQ*?^X <]76)R>4_U!JNNV*_\8^.-"A> =5HR@UW4N%=^.69_9;!WIP M.-#-2_HGYF98F]8'QXT5QXV?ON;PN<\4,%=M?:Y"F0JEIMN^\_!^\,K",?;Q M_5 ^0JGI7BH^&H-7%C9ZQK7]C4]0]D&IZ3XI]AD_?6TAY0G[P6>$%NR.?.%% M2C[D+'LRS9M;8GVV0M$*I:;_B1=!L0FJ M1E%JNI<*FR+SL)E]X/O=F-Y!LQHMJ _G]/,_%PYOJ9R*WOR-Z\7]02P,$ M% @ TIIC54Z/.(%( P K!0 T !X;"]S='EL97,N>&ULW5A=3]LP M%/TKD1D32!-I&TB;T5;:*B%-VB8D>-@;0XF>.REE^/KYVF'_A6C(?1 M+A7$OL?GW&/[IC'T*[T4[&[&F X6N9#5@,RT+C^'8369L9Q6%T7)I$&R0N54 MFZZ:AE6I&$TK(.4B[+1:<9A3+LFP+^?Y3:ZK8%+,I1Z0;A,*W.U;.B#M^)($ M3FY4I&Q 'LX^_IX7^OI#X.XGGTY.6@_GU[OQ,PNO4*T8L6KFLP3#K> MEK;#3XV0(YYBM.ZK'.TQA GW/'Z,_;4EZ&#DQ$O>H"+$;LN?=3MMG3>L"V'8 MSPJYKH>(N(#1ISD+'JD8D!$5?*PXL#*:<[%TX0X$)H4H5*!-(9J$;8A43PYN MNQ[4:*V3Y::2< M3@M)K8<5HVX8V0D3X@X>X%_9EO8BV]@YNV^R:1I#==/)N [H;ZHY[4W9RS?I M!B5_+/37N9F.M'TH<':K6,87MK_(&@.8>AM7IV4IEE\$G\J\ M8%8H_F2R0:E,3( I$CPRI?ED,_)'T?*>+?2JG!89[KESA)[_[3I/F62*BDW3 MIO8/>97?[#CJOI=E^ZVR:]CKL7XK'[K)JV,P&1^#R:.HR=[AFXR2P_=8G_H. MW&3WW;[9]YH,ZY/0QG%KZ[#51 ,XU [(3S@DBW728#SG0G-9]V8\39E\<>8R M\IJ.S9]B6_IF?,HR.A?ZO@$'9-W^P5(^SY-FU"TL1#UJW?X.TVO'S8G:Y.(R M90N6CNJNFHYM,S -D[6^@+"+W-C+CV ?R(?OK -O3?16"S12O1&RF^%H#XE\W8"2)?[>Q/,# =@&K'=$$>PJY@U[@G$D23 $:M%?HW&,K$X,'__^8$])%"6)'P',[R"*, 2> M1AS!'( '#(DB^Q[<>1^%J_=4N/[_Y/ 94$L#!!0 ( -*:8U67BKL

-8?20$3;8T.P6BP^0"X99K>]9!:G9WWS_-SMKX7*>[?7[_>:EWUX4-1R5:LBUR>;$TLE7ZN/Z\TA M^Z$J]:@R5?][TVOW,]EC:Y6KM?HITYO>>8]5+\7K?5&JGT5>BRQ>E466W?2, MW86E+&NU^NUTW$ FXK%JS]3B,1(:Y*;GGNL;/JFRJML2[?V%9OPA=>'=T;8N MQBJK93D2M9R4Q7:C\N?F-OHI^N QVGIXW^XJ\:K\/]58/#VIE1P5J^U:YO6N M'DN9-8!Y]:(V58_E8BUO>N]%F,A3QO-:5Q+S\]VM=-GF2?5/^^GNJ6N-"^JP MO%+Z0NFG+3@=Y# ,1CR(^8CIO3B<^B,OT0=WWM0+AIP!2!.!-$\(^6 "2 N! MM$X"&2=Z,^,!@+012/N$D)V:=!!(YY20%H!T$4B7%C*,)E[@_^,E?A@P+QBQ M<,ZC]BAFX1AVG $".:"%C/B0!PGSAL-P$21^,&'S* ST_K!Y)1, >8% 7E!# M+GFPX#&@N41H+FEIXL5\/FUKQYNRL1_H$<;7>T>ZL7&.#=OGM)@C'OE+_;HM M.8#T@SB)%@<8B)N<,@ED?,)[-V.-&($QY.(F]^[P_;]VX< M1C.(B=G#(-:''^CZY"SQ_NZV,"8+@]@6W(L"/?S&3$N"Q?=>Q-D9G\=_0#[, M$P:Q*+1H&SUP/8YT*PWS@D$LAGAQ%_._%LTKUR@BZ8!ABC"('8&ZOS.+,C%' MF,2.0.W?Q<0<81([XMW_[&Q>9&JE9 6[A8G&'<2:^$#3\65V (89PR0V!CI+ MZ38M9@R3V!B'^C]:CY@K3&)7[.8!1[$P79C$ND!-VVU>S!HFL34^L]JO^H28 MF$=,8H_@PS6,)TW,*N9)K6+#+ =F%8O8*CBF S$QJUCD5L'D!QO=P@QC?95A MOK%8/K?I0I CA&D$"\UM$?L&8$YD+DN1?8J)^<:BCE!0+78:';..16P='+/3 MTS$+6=060C$[/1VSD$5L(1S3A9B8A2SR: ;#'$!,S$+6*?-?#Q_'-$Z!:=S9"&)B%K*)+;3'G$I12<;?]+WT M]FPD:Z&R"GZGQ"SD$%MHCSG4%XI,I9HC97;3#:E=7T.1?7"QEGQ M"C$Q"SG$%MICAAO=T6N5/^\Z4Z5/S40-,=%O_5^3@3N*.2D+B(E9R"&VT!YS MK/*V<\.ZW)80$[.00VRASS%U75:=<1.SD$-L(?2#9W<9"F8AA]A".&9G(0IF M(94 M:P8Z60\7LY!+G9%#,6'6PT77G)WTNQ#,>KB8A5QB"\$5&%H]2Y%M=P&&E^D) MDH"8F(5<8@L=8"ZT+TL]UQUG.0ME@SAX>8F(4&Q!;Z])OE+OL!,3$+#8@MA&!Z>2?K,< L M-"#/R!TLT3D:K@TP PU: _7;PM7M=2J?5"[30-^^TN=7(EO-2]9L=HL&;:=9 M^O.TS;*A/A?FTT*D[\O[W_\UX?8_4$L#!!0 ( -*:8U7'UW-/1P( -4K M : >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'/-VDMNHT 4A>&M6"P@ MN.ZKDE:<44\RC;(!Y)0?BFT0T$JR^[:<@7U0#WH2<4:H0%S^ ?J$@,>7#Z=A5>W&L?M5U\-Z5X[-<-=VY70^LFG[8S.>E_VV[IKU>[,M MM2R74?>W,ZJGQ]N9B]>OKOS/Q':SV:_+[W;]YUA.XS\&UQ]M_S[L2AFKQ6O3 M;\NXJNK/PW7W4%\VZ>X\N5H\OZVJ_ODM5?7<00)!,G^00I#.'V009/,'.03Y M_$$!03%_4(:@/'_0/03=SQ_T $$/\P>E)%.!'(GI#L1V)T0[T2@MZ#>0J"WH-Y"H+=,'K8) M]!;46PCT%M1;"/06U%L(]!;46PCT%M1;"/06U%L(]!;46PCT5M1;"?16U%L) M]%;46PGTULG+$@*]%?56 KT5]58"O17U5@*]%?56 KT5]58"O17U5@*]#?4V M KT-]38"O0WU-@*]#?4V KUM\K*;0&]#O8U ;T.]C4!O0[V-0&]#O8U ;T.] MC4!O1[V=0&]'O9U ;T>]G4!O1[V=0&]'O9U ;Y]\K"30VU%O)]#;46\GT-M1 M;R?0VU%O)] [4.\@T#M0[R#0.U#O(- [4.\@T#M0[R#0.U#O(- [)C^;$.@= MJ'<0Z!VH=Q#H':AW$.B=4>],H'=&O3.!WAGUS@1Z9]0[$^B=4>_\DWH/X]>A M#->>[S5>_R>I'L_GENOE+\OOG9.[]X)S?5LQ//T%4$L#!!0 ( -*:8U4? MG85O"0( -@J 3 6T-O;G1E;G1?5'EP97-=+GAM;,W:S4[C,!0%X%>I MLD6-Z]\PB+(!M@.+>0%/ M_WKR%&>'OAOBLMBDY*\8B_6&>AM+YVG(*RL7>IORU[!FWM9;NR8F%@O#:C^*F]?$B;RC8NPGCRL]A1"V]#LT8;TT_9Y%SMT+*:GCF)Y MNL0[/;K5JJVI1C*?G/A>BD-K3K_B6F$N?_7XT3KNAYI/9^7K_N+"=YA'9]#C_ MCO^>\5O]+_8A0/J0('THD#XT2!\&I(\*I(]+D#Y^@/3!%RB-H(C*44CE**9R M%%0YBJH894$L! A0#% @ TIIC50=!36*! L0 ! M ( ! &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4 " #2 MFF-5_R&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( -*:8U4-:A\X M^ 4 -&PO=V]R:W-H965T&UL4$L! A0#% @ TIIC M592I/DUD P $@T !@ ("!CQ4 'AL+W=O&PO=V]R:W-H M965T&UL4$L! A0#% @ TIIC5:/F9%NE" WB8 !@ M ("! C 'AL+W=O&PO=V]R:W-H965T&UL M4$L! A0#% @ TIIC59Z.%Q6M% A4 !@ ("!"$D M 'AL+W=OO'! M"P< +$7 9 " @>M= !X;"]W;W)K&UL4$L! A0#% @ TIIC5?US.!]>! 50L !D M ("!+64 'AL+W=OUY94. !^-@ &0 @('":0 >&PO=V]R:W-H965T M&UL4$L! A0# M% @ TIIC52T863-&!P RQ$ !D ("!#X0 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ TIIC55JA M(.2 ! $ T !D ("!":( 'AL+W=O&PO=V]R:W-H965TYE J , "<) 9 " @:^L !X;"]W;W)K&UL4$L! A0#% @ TIIC5<,S)K*?"0 T!D !D M ("!CK 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ TIIC57__"$R( @ "08 !D ("! M:M0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ TIIC55QG_[L\!@ M1L !D ("! N$ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ TIIC5649G[I+ @ ?04 !D M ("![OT 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ TIIC5;H>*C!H @ >P4 !D ("!'0@! M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MTIIC54*($* . P # D !D ("!0!(! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ TIIC57\15M/& P M;Q0 !D ("!'QT! 'AL+W=O&PO=V]R:W-H965T M=S2"60( ",% 9 " @>XC 0!X;"]W;W)K&UL4$L! A0#% @ TIIC59C^4]F( @ P@4 !D M ("!?B8! 'AL+W=O&PO=V]R:W-H M965TXK 0!X;"]W;W)K&UL4$L! M A0#% @ TIIC59P6&$V- @ <@8 !D ("!IR\! 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ TIIC M57'-6[E0 P =@P !D ("!\48! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ TIIC5?=G(2Y\ @ G0< M !D ("!>5$! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ TIIC50BZ*[B\ @ [@< !D M ("!(UH! 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ TIIC51IM_9G_ P XP\ !D ("!MV(! 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ TIIC5&PO=V]R:W-H965T&UL4$L! A0#% @ TIIC5=+>Q.])"@ =V< !D M ("!4GX! 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ TIIC53RE)W&+ P Y!( !D ("! MB)(! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ TIIC5&C 0!X M;"]W;W)K&UL4$L! A0#% @ TIIC5<)XXZ*1 M"@ 4W0 !D ("!VZ8! 'AL+W=O&PO&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4 " #2FF-5 M'YV%;PD" #8*@ $P @ %MO@$ 6T-O;G1E;G1?5'EP97-= :+GAM;%!+!08 4@!2 '46 "GP $ ! end XML 87 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 88 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 89 FilingSummary.xml IDEA: XBRL DOCUMENT 3.22.2.2 html 321 296 1 false 73 0 false 9 false false R1.htm 00090 - Document - Document and Entity Information Sheet http://www.willdan.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 00100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS Sheet http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets CONDENSED CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 00105 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 00200 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME Sheet http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME Statements 4 false false R5.htm 00300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Sheet http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY Statements 5 false false R6.htm 00400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 10101 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY Sheet http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompany ORGANIZATION AND OPERATIONS OF THE COMPANY Notes 7 false false R8.htm 10201 - Disclosure - RECENT ACCOUNTING PRONOUNCEMENTS Sheet http://www.willdan.com/role/DisclosureRecentAccountingPronouncements RECENT ACCOUNTING PRONOUNCEMENTS Notes 8 false false R9.htm 10301 - Disclosure - REVENUES Sheet http://www.willdan.com/role/DisclosureRevenues REVENUES Notes 9 false false R10.htm 10401 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementData SUPPLEMENTAL FINANCIAL STATEMENT DATA Notes 10 false false R11.htm 10501 - Disclosure - DERIVATIVE FINANCIAL INSTRUMENTS Sheet http://www.willdan.com/role/DisclosureDerivativeFinancialInstruments DERIVATIVE FINANCIAL INSTRUMENTS Notes 11 false false R12.htm 10601 - Disclosure - DEBT OBLIGATIONS Sheet http://www.willdan.com/role/DisclosureDebtObligations DEBT OBLIGATIONS Notes 12 false false R13.htm 10701 - Disclosure - LEASES Sheet http://www.willdan.com/role/DisclosureLeases LEASES Notes 13 false false R14.htm 10801 - Disclosure - COMMITMENTS AND VARIABLE INTEREST ENTITIES Sheet http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntities COMMITMENTS AND VARIABLE INTEREST ENTITIES Notes 14 false false R15.htm 10901 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION Sheet http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformation SEGMENT AND GEOGRAPHICAL INFORMATION Notes 15 false false R16.htm 11001 - Disclosure - INCOME TAXES Sheet http://www.willdan.com/role/DisclosureIncomeTaxes INCOME TAXES Notes 16 false false R17.htm 11101 - Disclosure - EARNINGS PER SHARE (EPS) Sheet http://www.willdan.com/role/DisclosureEarningsPerShareEps EARNINGS PER SHARE (EPS) Notes 17 false false R18.htm 11201 - Disclosure - CONTINGENCIES Sheet http://www.willdan.com/role/DisclosureContingencies CONTINGENCIES Notes 18 false false R19.htm 11301 - Disclosure - SUBSEQUENT EVENTS Sheet http://www.willdan.com/role/DisclosureSubsequentEvents SUBSEQUENT EVENTS Notes 19 false false R20.htm 20102 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY (Policies) Sheet http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyPolicies ORGANIZATION AND OPERATIONS OF THE COMPANY (Policies) Policies 20 false false R21.htm 20202 - Disclosure - RECENT ACCOUNTING PRONOUNCEMENTS (Policies) Sheet http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsPolicies RECENT ACCOUNTING PRONOUNCEMENTS (Policies) Policies 21 false false R22.htm 20302 - Disclosure - REVENUES (Policies) Sheet http://www.willdan.com/role/DisclosureRevenuesPolicies REVENUES (Policies) Policies 22 false false R23.htm 30303 - Disclosure - REVENUES (Tables) Sheet http://www.willdan.com/role/DisclosureRevenuesTables REVENUES (Tables) Tables http://www.willdan.com/role/DisclosureRevenues 23 false false R24.htm 30403 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA (Tables) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataTables SUPPLEMENTAL FINANCIAL STATEMENT DATA (Tables) Tables http://www.willdan.com/role/DisclosureSupplementalFinancialStatementData 24 false false R25.htm 30603 - Disclosure - DEBT OBLIGATIONS (Tables) Sheet http://www.willdan.com/role/DisclosureDebtObligationsTables DEBT OBLIGATIONS (Tables) Tables http://www.willdan.com/role/DisclosureDebtObligations 25 false false R26.htm 30703 - Disclosure - LEASES (Tables) Sheet http://www.willdan.com/role/DisclosureLeasesTables LEASES (Tables) Tables http://www.willdan.com/role/DisclosureLeases 26 false false R27.htm 30903 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION (Tables) Sheet http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationTables SEGMENT AND GEOGRAPHICAL INFORMATION (Tables) Tables http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformation 27 false false R28.htm 31103 - Disclosure - EARNINGS PER SHARE (EPS) (Tables) Sheet http://www.willdan.com/role/DisclosureEarningsPerShareEpsTables EARNINGS PER SHARE (EPS) (Tables) Tables http://www.willdan.com/role/DisclosureEarningsPerShareEps 28 false false R29.htm 40101 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY - Segment Information (Details) Sheet http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanySegmentInformationDetails ORGANIZATION AND OPERATIONS OF THE COMPANY - Segment Information (Details) Details 29 false false R30.htm 40102 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY - Fiscal Years (Details) Sheet http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyFiscalYearsDetails ORGANIZATION AND OPERATIONS OF THE COMPANY - Fiscal Years (Details) Details 30 false false R31.htm 40103 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY - Historical and Current Impact of Covid-19 (Details) Sheet http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details ORGANIZATION AND OPERATIONS OF THE COMPANY - Historical and Current Impact of Covid-19 (Details) Details 31 false false R32.htm 40201 - Disclosure - RECENT ACCOUNTING PRONOUNCEMENTS (Details) Sheet http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsDetails RECENT ACCOUNTING PRONOUNCEMENTS (Details) Details http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsPolicies 32 false false R33.htm 40301 - Disclosure - REVENUES - Segment Information (Details) Sheet http://www.willdan.com/role/DisclosureRevenuesSegmentInformationDetails REVENUES - Segment Information (Details) Details 33 false false R34.htm 40302 - Disclosure - REVENUES - General Information (Details) Sheet http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails REVENUES - General Information (Details) Details 34 false false R35.htm 40401 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accounts Receivable (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccountsReceivableDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accounts Receivable (Details) Details 35 false false R36.htm 40402 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Tabular Disclosure (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Tabular Disclosure (Details) Details 36 false false R37.htm 40403 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Amortization Expense (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetAmortizationExpenseDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Amortization Expense (Details) Details 37 false false R38.htm 40404 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accrued Liabilities (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accrued Liabilities (Details) Details 38 false false R39.htm 40405 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Goodwill (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - Goodwill (Details) Details 39 false false R40.htm 40406 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Gross Amounts and Accumulated Amortization (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Gross Amounts and Accumulated Amortization (Details) Details 40 false false R41.htm 40407 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Amortization Period (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Amortization Period (Details) Details 41 false false R42.htm 40408 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Intangible Assets (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataIntangibleAssetsDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - Intangible Assets (Details) Details 42 false false R43.htm 40409 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - In-process Research and Technology Reclassified (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataInProcessResearchAndTechnologyReclassifiedDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - In-process Research and Technology Reclassified (Details) Details 43 false false R44.htm 40410 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Developed Technology (Details) Sheet http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataDevelopedTechnologyDetails SUPPLEMENTAL FINANCIAL STATEMENT DATA - Developed Technology (Details) Details 44 false false R45.htm 40501 - Disclosure - DERIVATIVE FINANCIAL INSTRUMENTS (Details) Sheet http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails DERIVATIVE FINANCIAL INSTRUMENTS (Details) Details http://www.willdan.com/role/DisclosureDerivativeFinancialInstruments 45 false false R46.htm 40601 - Disclosure - DEBT OBLIGATIONS - Composition (Details) Sheet http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails DEBT OBLIGATIONS - Composition (Details) Details 46 false false R47.htm 40602 - Disclosure - DEBT OBLIGATIONS - Classification (Details) Sheet http://www.willdan.com/role/DisclosureDebtObligationsClassificationDetails DEBT OBLIGATIONS - Classification (Details) Details 47 false false R48.htm 40603 - Disclosure - DEBT OBLIGATIONS - Credit Facilities (Details) Sheet http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails DEBT OBLIGATIONS - Credit Facilities (Details) Details 48 false false R49.htm 40701 - Disclosure - LEASES - General information (Details) Sheet http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails LEASES - General information (Details) Details 49 false false R50.htm 40702 - Disclosure - LEASES - Lease Expense (Details) Sheet http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails LEASES - Lease Expense (Details) Details 50 false false R51.htm 40703 - Disclosure - LEASES - Consolidated Balance Sheet (Details) Sheet http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails LEASES - Consolidated Balance Sheet (Details) Details 51 false false R52.htm 40704 - Disclosure - LEASES - Additional Information (Details) Sheet http://www.willdan.com/role/DisclosureLeasesAdditionalInformationDetails LEASES - Additional Information (Details) Details 52 false false R53.htm 40705 - Disclosure - LEASES - Rent Expense (Details) Sheet http://www.willdan.com/role/DisclosureLeasesRentExpenseDetails LEASES - Rent Expense (Details) Details 53 false false R54.htm 40706 - Disclosure - LEASES - Supplemental Cash Flow Information (Details) Sheet http://www.willdan.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails LEASES - Supplemental Cash Flow Information (Details) Details 54 false false R55.htm 40707 - Disclosure - LEASES - Operating Leases - Maturities of Lease Liabilities (Details) Sheet http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails LEASES - Operating Leases - Maturities of Lease Liabilities (Details) Details 55 false false R56.htm 40708 - Disclosure - LEASES - Operating Leases - Gross Difference (Details) Sheet http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails LEASES - Operating Leases - Gross Difference (Details) Details 56 false false R57.htm 40709 - Disclosure - LEASES - Finance Leases - Maturities of Lease Liabilities (Details) Sheet http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails LEASES - Finance Leases - Maturities of Lease Liabilities (Details) Details 57 false false R58.htm 40710 - Disclosure - LEASES - Finance Leases - Gross Difference (Details) Sheet http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails LEASES - Finance Leases - Gross Difference (Details) Details 58 false false R59.htm 40801 - Disclosure - COMMITMENTS AND VARIABLE INTEREST ENTITIES - Employee Benefit Plans (Details) Sheet http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails COMMITMENTS AND VARIABLE INTEREST ENTITIES - Employee Benefit Plans (Details) Details 59 false false R60.htm 40802 - Disclosure - COMMITMENTS AND VARIABLE INTEREST ENTITIES - Variable Interest Entities (Details) Sheet http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesVariableInterestEntitiesDetails COMMITMENTS AND VARIABLE INTEREST ENTITIES - Variable Interest Entities (Details) Details 60 false false R61.htm 40901 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Information (Details) Sheet http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentInformationDetails SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Information (Details) Details 61 false false R62.htm 40902 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Intersegment Sales (Details) Sheet http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationIntersegmentSalesDetails SEGMENT AND GEOGRAPHICAL INFORMATION - Intersegment Sales (Details) Details 62 false false R63.htm 40903 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Statement of Operations (Details) Sheet http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails SEGMENT AND GEOGRAPHICAL INFORMATION - Statement of Operations (Details) Details 63 false false R64.htm 40904 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Assets (Details) Sheet http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Assets (Details) Details 64 false false R65.htm 40905 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Disaggregation of Revenue (Details) Sheet http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails SEGMENT AND GEOGRAPHICAL INFORMATION - Disaggregation of Revenue (Details) Details 65 false false R66.htm 40906 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Geographical Information (Details) Sheet http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationGeographicalInformationDetails SEGMENT AND GEOGRAPHICAL INFORMATION - Geographical Information (Details) Details 66 false false R67.htm 40907 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Concentration Risk (Details) Sheet http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails SEGMENT AND GEOGRAPHICAL INFORMATION - Concentration Risk (Details) Details 67 false false R68.htm 41001 - Disclosure - INCOME TAXES - Valuation Allowance (Details) Sheet http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails INCOME TAXES - Valuation Allowance (Details) Details 68 false false R69.htm 41002 - Disclosure - INCOME TAXES - Uncertain Tax Positions (Details) Sheet http://www.willdan.com/role/DisclosureIncomeTaxesUncertainTaxPositionsDetails INCOME TAXES - Uncertain Tax Positions (Details) Details 69 false false R70.htm 41003 - Disclosure - INCOME TAXES - Income Tax Expense (Benefit) (Details) Sheet http://www.willdan.com/role/DisclosureIncomeTaxesIncomeTaxExpenseBenefitDetails INCOME TAXES - Income Tax Expense (Benefit) (Details) Details 70 false false R71.htm 41004 - Disclosure - INCOME TAXES - Examinations (Details) Sheet http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails INCOME TAXES - Examinations (Details) Details 71 false false R72.htm 41101 - Disclosure - EARNINGS PER SHARE (EPS) - Computation (Details) Sheet http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails EARNINGS PER SHARE (EPS) - Computation (Details) Details http://www.willdan.com/role/DisclosureEarningsPerShareEpsTables 72 false false R73.htm 41102 - Disclosure - EARNINGS PER SHARE (EPS) - Antidilutive Securities (Details) Sheet http://www.willdan.com/role/DisclosureEarningsPerShareEpsAntidilutiveSecuritiesDetails EARNINGS PER SHARE (EPS) - Antidilutive Securities (Details) Details http://www.willdan.com/role/DisclosureEarningsPerShareEpsTables 73 false false R74.htm 41301 - Disclosure - SUBSEQUENT EVENTS (Details) Sheet http://www.willdan.com/role/DisclosureSubsequentEventsDetails SUBSEQUENT EVENTS (Details) Details http://www.willdan.com/role/DisclosureSubsequentEvents 74 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 17 fact(s) appearing in ix:hidden were eligible for transformation: us-gaap:CommonStockSharesIssued, us-gaap:CommonStockSharesOutstanding, us-gaap:DerivativeNotionalAmount, us-gaap:FiniteLivedIntangibleAssetsPeriodIncreaseDecrease, us-gaap:GoodwillImpairmentLoss, us-gaap:ImpairmentOfLongLivedAssetsHeldForUse, us-gaap:LesseeOperatingLeaseRemainingLeaseTerm, us-gaap:LineOfCreditFacilityCommitmentFeePercentage, us-gaap:NetIncomeLossAvailableToCommonStockholdersDiluted, us-gaap:PreferredStockSharesOutstanding, us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax - wldn-20220930x10q.htm 9 [ix-0514-Hidden-Fact-Not-Referenced] WARN: 3 fact(s) appearing in ix:hidden were not referenced by any -sec-ix-hidden style property: us-gaap:CommitmentsAndContingencies, us-gaap:FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList - wldn-20220930x10q.htm 9 wldn-20220930x10q.htm wldn-20220930.xsd wldn-20220930_cal.xml wldn-20220930_def.xml wldn-20220930_lab.xml wldn-20220930_pre.xml wldn-20220930xex10d1.htm wldn-20220930xex31d1.htm wldn-20220930xex31d2.htm wldn-20220930xex32d1.htm http://fasb.org/us-gaap/2022 http://xbrl.sec.gov/dei/2022 true true JSON 92 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "wldn-20220930x10q.htm": { "axisCustom": 0, "axisStandard": 26, "contextCount": 321, "dts": { "calculationLink": { "local": [ "wldn-20220930_cal.xml" ] }, "definitionLink": { "local": [ "wldn-20220930_def.xml" ] }, "inline": { "local": [ "wldn-20220930x10q.htm" ] }, "labelLink": { "local": [ "wldn-20220930_lab.xml" ] }, "presentationLink": { "local": [ "wldn-20220930_pre.xml" ] }, "schema": { "local": [ "wldn-20220930.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd", "https://xbrl.sec.gov/country/2022/country-2022.xsd", "https://xbrl.sec.gov/dei/2022/dei-2022.xsd", "https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd" ] } }, "elementCount": 521, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2022": 24, "http://xbrl.sec.gov/dei/2022": 5, "total": 29 }, "keyCustom": 49, "keyStandard": 247, "memberCustom": 28, "memberStandard": 45, "nsprefix": "wldn", "nsuri": "http://www.willdan.com/20220930", "report": { "R1": { "firstAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "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.willdan.com/role/DocumentDocumentAndEntityInformation", "shortName": "Document and Entity Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "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": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10401 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementData", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10501 - Disclosure - DERIVATIVE FINANCIAL INSTRUMENTS", "role": "http://www.willdan.com/role/DisclosureDerivativeFinancialInstruments", "shortName": "DERIVATIVE FINANCIAL INSTRUMENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10601 - Disclosure - DEBT OBLIGATIONS", "role": "http://www.willdan.com/role/DisclosureDebtObligations", "shortName": "DEBT OBLIGATIONS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "wldn:LesseeOperatingAndFinanceLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10701 - Disclosure - LEASES", "role": "http://www.willdan.com/role/DisclosureLeases", "shortName": "LEASES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "wldn:LesseeOperatingAndFinanceLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10801 - Disclosure - COMMITMENTS AND VARIABLE INTEREST ENTITIES", "role": "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntities", "shortName": "COMMITMENTS AND VARIABLE INTEREST ENTITIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10901 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION", "role": "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformation", "shortName": "SEGMENT AND GEOGRAPHICAL INFORMATION", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11001 - Disclosure - INCOME TAXES", "role": "http://www.willdan.com/role/DisclosureIncomeTaxes", "shortName": "INCOME TAXES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11101 - Disclosure - EARNINGS PER SHARE (EPS)", "role": "http://www.willdan.com/role/DisclosureEarningsPerShareEps", "shortName": "EARNINGS PER SHARE (EPS)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11201 - Disclosure - CONTINGENCIES", "role": "http://www.willdan.com/role/DisclosureContingencies", "shortName": "CONTINGENCIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LegalMattersAndContingenciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11301 - Disclosure - SUBSEQUENT EVENTS", "role": "http://www.willdan.com/role/DisclosureSubsequentEvents", "shortName": "SUBSEQUENT EVENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS", "role": "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "20102 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY (Policies)", "role": "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyPolicies", "shortName": "ORGANIZATION AND OPERATIONS OF THE COMPANY (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "20202 - Disclosure - RECENT ACCOUNTING PRONOUNCEMENTS (Policies)", "role": "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsPolicies", "shortName": "RECENT ACCOUNTING PRONOUNCEMENTS (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "20302 - Disclosure - REVENUES (Policies)", "role": "http://www.willdan.com/role/DisclosureRevenuesPolicies", "shortName": "REVENUES (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "wldn:ScheduleOfByTypeAndReportableSegmentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30303 - Disclosure - REVENUES (Tables)", "role": "http://www.willdan.com/role/DisclosureRevenuesTables", "shortName": "REVENUES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "wldn:ScheduleOfByTypeAndReportableSegmentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30403 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA (Tables)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataTables", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30603 - Disclosure - DEBT OBLIGATIONS (Tables)", "role": "http://www.willdan.com/role/DisclosureDebtObligationsTables", "shortName": "DEBT OBLIGATIONS (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseCostTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30703 - Disclosure - LEASES (Tables)", "role": "http://www.willdan.com/role/DisclosureLeasesTables", "shortName": "LEASES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseCostTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30903 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION (Tables)", "role": "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationTables", "shortName": "SEGMENT AND GEOGRAPHICAL INFORMATION (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31103 - Disclosure - EARNINGS PER SHARE (EPS) (Tables)", "role": "http://www.willdan.com/role/DisclosureEarningsPerShareEpsTables", "shortName": "EARNINGS PER SHARE (EPS) (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "p", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unitRef": "Unit_Standard_segment_varKPHIDrUSRqGAnV1sZLw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40101 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY - Segment Information (Details)", "role": "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanySegmentInformationDetails", "shortName": "ORGANIZATION AND OPERATIONS OF THE COMPANY - Segment Information (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R3": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00105 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "role": "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "us-gaap:FiscalPeriodDuration", "us-gaap:FiscalPeriodDuration", "p", "us-gaap:FiscalPeriod", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_10_1_2022_To_12_30_2022_51PsgV8Nx0aDi3jp1toMJA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FiscalPeriodDuration", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40102 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY - Fiscal Years (Details)", "role": "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyFiscalYearsDetails", "shortName": "ORGANIZATION AND OPERATIONS OF THE COMPANY - Fiscal Years (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "us-gaap:FiscalPeriodDuration", "us-gaap:FiscalPeriodDuration", "p", "us-gaap:FiscalPeriod", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_10_1_2022_To_12_30_2022_51PsgV8Nx0aDi3jp1toMJA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FiscalPeriodDuration", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "p", "wldn:Covid19PandemicPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_11_2_2022_To_11_2_2022_us-gaap_UnusualOrInfrequentItemAxis_wldn_Covid19Member_iJ5p12DqEkCESlIAsuhvrA", "decimals": "INF", "first": true, "lang": null, "name": "wldn:UnusualOrInfrequentItemContractsCancelledNumber", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_contract_s7g4dQKW-ESvZpk0UFS_YA", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40103 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY - Historical and Current Impact of Covid-19 (Details)", "role": "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details", "shortName": "ORGANIZATION AND OPERATIONS OF THE COMPANY - Historical and Current Impact of Covid-19 (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "wldn:Covid19PandemicPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_11_2_2022_To_11_2_2022_us-gaap_UnusualOrInfrequentItemAxis_wldn_Covid19Member_iJ5p12DqEkCESlIAsuhvrA", "decimals": "INF", "first": true, "lang": null, "name": "wldn:UnusualOrInfrequentItemContractsCancelledNumber", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_contract_s7g4dQKW-ESvZpk0UFS_YA", "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "p", "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate202101Member_yb2Ggtm2VUqEX1ypc5xt-w", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40201 - Disclosure - RECENT ACCOUNTING PRONOUNCEMENTS (Details)", "role": "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsDetails", "shortName": "RECENT ACCOUNTING PRONOUNCEMENTS (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate202101Member_yb2Ggtm2VUqEX1ypc5xt-w", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "p", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unitRef": "Unit_Standard_segment_varKPHIDrUSRqGAnV1sZLw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40301 - Disclosure - REVENUES - Segment Information (Details)", "role": "http://www.willdan.com/role/DisclosureRevenuesSegmentInformationDetails", "shortName": "REVENUES - Segment Information (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R34": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "wldn:LaborAndRelatedExpenseExcludingStockBasedCompensation", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40302 - Disclosure - REVENUES - General Information (Details)", "role": "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails", "shortName": "REVENUES - General Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-3", "lang": null, "name": "wldn:RevenueOfTheEntityAsAnAgent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "p", "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-5", "first": true, "lang": null, "name": "wldn:ProceedsFromSaleOfTradeAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40401 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accounts Receivable (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccountsReceivableDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accounts Receivable (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-5", "first": true, "lang": null, "name": "wldn:ProceedsFromSaleOfTradeAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40402 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Tabular Disclosure (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Tabular Disclosure (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40403 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Amortization Expense (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetAmortizationExpenseDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Amortization Expense (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R38": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "wldn:AccruedSubcontractorCosts", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40404 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accrued Liabilities (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accrued Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "wldn:AccruedSubcontractorCosts", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_12_31_2021_VvKa3K-C2kyetY8ZGnEjFA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40405 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Goodwill (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_wldn_EnergyMember_VR-4q62AzkuQTp-T_jL92w", "decimals": "-3", "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00200 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME", "role": "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "lang": null, "name": "us-gaap:CostDirectLabor", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40406 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Gross Amounts and Accumulated Amortization (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Gross Amounts and Accumulated Amortization (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OrderOrProductionBacklogMember_7Tg10EBc_E-ZpgRWfCf6eA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40407 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Amortization Period (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Amortization Period (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OrderOrProductionBacklogMember_7Tg10EBc_E-ZpgRWfCf6eA", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40408 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Intangible Assets (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataIntangibleAssetsDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_12_31_2021_VvKa3K-C2kyetY8ZGnEjFA", "decimals": "-3", "lang": null, "name": "us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:IndefiniteLivedIntangibleAssetsPeriodIncreaseDecrease", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40409 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - In-process Research and Technology Reclassified (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataInProcessResearchAndTechnologyReclassifiedDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - In-process Research and Technology Reclassified (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:IndefiniteLivedIntangibleAssetsPeriodIncreaseDecrease", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R44": { "firstAnchor": null, "groupType": "disclosure", "isDefault": "false", "longName": "40410 - Disclosure - SUPPLEMENTAL FINANCIAL STATEMENT DATA - Developed Technology (Details)", "role": "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataDevelopedTechnologyDetails", "shortName": "SUPPLEMENTAL FINANCIAL STATEMENT DATA - Developed Technology (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R45": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_1_31_2019_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_8ynG_Mz-JUOXXCX5Y_BEcQ", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40501 - Disclosure - DERIVATIVE FINANCIAL INSTRUMENTS (Details)", "role": "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails", "shortName": "DERIVATIVE FINANCIAL INSTRUMENTS (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_1_31_2019_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_8ynG_Mz-JUOXXCX5Y_BEcQ", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentCarryingAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40601 - Disclosure - DEBT OBLIGATIONS - Composition (Details)", "role": "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "shortName": "DEBT OBLIGATIONS - Composition (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentCarryingAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LongTermDebt", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40602 - Disclosure - DEBT OBLIGATIONS - Classification (Details)", "role": "http://www.willdan.com/role/DisclosureDebtObligationsClassificationDetails", "shortName": "DEBT OBLIGATIONS - Classification (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "lang": null, "name": "us-gaap:LongTermDebtCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_6_26_2019_us-gaap_DebtInstrumentAxis_wldn_CreditAgreement2019Member_us-gaap_LongtermDebtTypeAxis_us-gaap_NotesPayableToBanksMember_ZXd4ArMVzES0mX1oDTGO8w", "decimals": "INF", "first": true, "lang": null, "name": "wldn:DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune262020", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_D9B3M_vJrkCbmo6vz7iesw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40603 - Disclosure - DEBT OBLIGATIONS - Credit Facilities (Details)", "role": "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "shortName": "DEBT OBLIGATIONS - Credit Facilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_6_26_2019_us-gaap_DebtInstrumentAxis_wldn_CreditAgreement2019Member_us-gaap_LongtermDebtTypeAxis_us-gaap_NotesPayableToBanksMember_ZXd4ArMVzES0mX1oDTGO8w", "decimals": "INF", "first": true, "lang": null, "name": "wldn:DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune262020", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_D9B3M_vJrkCbmo6vz7iesw", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "p", "wldn:LesseeOperatingAndFinanceLeasesTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40701 - Disclosure - LEASES - General information (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails", "shortName": "LEASES - General information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "wldn:LesseeOperatingAndFinanceLeasesTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_1_1_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_xaERhwmr1Eeff6nRz6NItg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "role": "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_2_2021_To_4_2_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_7mSTMSFlME653Cla95hmdg", "decimals": "-3", "lang": null, "name": "us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseCost", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40702 - Disclosure - LEASES - Lease Expense (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails", "shortName": "LEASES - Lease Expense (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseCost", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseRightOfUseAsset", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40703 - Disclosure - LEASES - Consolidated Balance Sheet (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails", "shortName": "LEASES - Consolidated Balance Sheet (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "wldn:LesseeBalanceSheetAndOtherInformationOfLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "wldn:LesseeBalanceSheetAndOtherInformationOfLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40704 - Disclosure - LEASES - Additional Information (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesAdditionalInformationDetails", "shortName": "LEASES - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "wldn:LesseeBalanceSheetAndOtherInformationOfLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-5", "first": true, "lang": null, "name": "wldn:OperatingLeaseRentExpenses", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40705 - Disclosure - LEASES - Rent Expense (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesRentExpenseDetails", "shortName": "LEASES - Rent Expense (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-5", "first": true, "lang": null, "name": "wldn:OperatingLeaseRentExpenses", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "wldn:LesseeOtherInformationAndSupplementalCashFlowInformationOfLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40706 - Disclosure - LEASES - Supplemental Cash Flow Information (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails", "shortName": "LEASES - Supplemental Cash Flow Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "wldn:LesseeOtherInformationAndSupplementalCashFlowInformationOfLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40707 - Disclosure - LEASES - Operating Leases - Maturities of Lease Liabilities (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails", "shortName": "LEASES - Operating Leases - Maturities of Lease Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40708 - Disclosure - LEASES - Operating Leases - Gross Difference (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails", "shortName": "LEASES - Operating Leases - Gross Difference (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40709 - Disclosure - LEASES - Finance Leases - Maturities of Lease Liabilities (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails", "shortName": "LEASES - Finance Leases - Maturities of Lease Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsDue", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40710 - Disclosure - LEASES - Finance Leases - Gross Difference (Details)", "role": "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails", "shortName": "LEASES - Finance Leases - Gross Difference (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "lang": null, "name": "us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "INF", "first": true, "lang": null, "name": "wldn:DefinedContributionPlanEmployerMatchingContributionAgeOfEmployees", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_Y_ypQAl3Xn302t7VZwfX1Snw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40801 - Disclosure - COMMITMENTS AND VARIABLE INTEREST ENTITIES - Employee Benefit Plans (Details)", "role": "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails", "shortName": "COMMITMENTS AND VARIABLE INTEREST ENTITIES - Employee Benefit Plans (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "INF", "first": true, "lang": null, "name": "wldn:DefinedContributionPlanEmployerMatchingContributionAgeOfEmployees", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_Y_ypQAl3Xn302t7VZwfX1Snw", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "role": "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "INF", "first": true, "lang": null, "name": "wldn:NumberOfVariableInterestEntity", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_item_DnjVEHD_lUOsyKj34v08Zw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40802 - Disclosure - COMMITMENTS AND VARIABLE INTEREST ENTITIES - Variable Interest Entities (Details)", "role": "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesVariableInterestEntitiesDetails", "shortName": "COMMITMENTS AND VARIABLE INTEREST ENTITIES - Variable Interest Entities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "INF", "first": true, "lang": null, "name": "wldn:NumberOfVariableInterestEntity", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_item_DnjVEHD_lUOsyKj34v08Zw", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "p", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unitRef": "Unit_Standard_segment_varKPHIDrUSRqGAnV1sZLw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40901 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Information (Details)", "role": "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentInformationDetails", "shortName": "SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Information (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R62": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40902 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Intersegment Sales (Details)", "role": "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationIntersegmentSalesDetails", "shortName": "SEGMENT AND GEOGRAPHICAL INFORMATION - Intersegment Sales (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R63": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40903 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Statement of Operations (Details)", "role": "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "shortName": "SEGMENT AND GEOGRAPHICAL INFORMATION - Statement of Operations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_us-gaap_StatementBusinessSegmentsAxis_wldn_EnergyMember_XIqd-U6NVEimGUfcFgPo0Q", "decimals": "-3", "lang": null, "name": "us-gaap:DepreciationAndAmortization", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Assets", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40904 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Assets (Details)", "role": "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "shortName": "SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_10_1_2021_NMk5Aq8LiEumvQ9XBC5gRg", "decimals": "-3", "lang": null, "name": "us-gaap:Assets", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R65": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40905 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Disaggregation of Revenue (Details)", "role": "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails", "shortName": "SEGMENT AND GEOGRAPHICAL INFORMATION - Disaggregation of Revenue (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_srt_StatementGeographicalAxis_country_US__PAectWSC0KACciAQ2kGPQ", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R66": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfStatesInWhichEntityOperates", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_state_jFFrL6GV3EiHOxA_vnarkg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40906 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Geographical Information (Details)", "role": "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationGeographicalInformationDetails", "shortName": "SEGMENT AND GEOGRAPHICAL INFORMATION - Geographical Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfStatesInWhichEntityOperates", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_state_jFFrL6GV3EiHOxA_vnarkg", "xsiNil": "false" } }, "R67": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_srt_StatementGeographicalAxis_stpr_CA_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_RevenueFromContractWithCustomerMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember_Cj-vgGrabkGtQ7JOGh-q5Q", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_D9B3M_vJrkCbmo6vz7iesw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40907 - Disclosure - SEGMENT AND GEOGRAPHICAL INFORMATION - Concentration Risk (Details)", "role": "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails", "shortName": "SEGMENT AND GEOGRAPHICAL INFORMATION - Concentration Risk (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_srt_StatementGeographicalAxis_stpr_CA_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_RevenueFromContractWithCustomerMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember_Cj-vgGrabkGtQ7JOGh-q5Q", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_D9B3M_vJrkCbmo6vz7iesw", "xsiNil": "false" } }, "R68": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41001 - Disclosure - INCOME TAXES - Valuation Allowance (Details)", "role": "http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails", "shortName": "INCOME TAXES - Valuation Allowance (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R69": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41002 - Disclosure - INCOME TAXES - Uncertain Tax Positions (Details)", "role": "http://www.willdan.com/role/DisclosureIncomeTaxesUncertainTaxPositionsDetails", "shortName": "INCOME TAXES - Uncertain Tax Positions (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_9_30_2022_6EjdgHqQ4Eu0iXyU0uAPbQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10101 - Disclosure - ORGANIZATION AND OPERATIONS OF THE COMPANY", "role": "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompany", "shortName": "ORGANIZATION AND OPERATIONS OF THE COMPANY", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R70": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:IncomeTaxExpenseBenefit", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41003 - Disclosure - INCOME TAXES - Income Tax Expense (Benefit) (Details)", "role": "http://www.willdan.com/role/DisclosureIncomeTaxesIncomeTaxExpenseBenefitDetails", "shortName": "INCOME TAXES - Income Tax Expense (Benefit) (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R71": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_6_10_2021_To_6_10_2021_us-gaap_IncomeTaxAuthorityNameAxis_us-gaap_NewYorkStateDivisionOfTaxationAndFinanceMember_us-gaap_TaxPeriodAxis_us-gaap_TaxYear2017Member_otqaVg-6s0y2f-HLElX--A", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxExaminationYearUnderExamination", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41004 - Disclosure - INCOME TAXES - Examinations (Details)", "role": "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails", "shortName": "INCOME TAXES - Examinations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_6_10_2021_To_6_10_2021_us-gaap_IncomeTaxAuthorityNameAxis_us-gaap_NewYorkStateDivisionOfTaxationAndFinanceMember_us-gaap_TaxPeriodAxis_us-gaap_TaxYear2017Member_otqaVg-6s0y2f-HLElX--A", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxExaminationYearUnderExamination", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R72": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41101 - Disclosure - EARNINGS PER SHARE (EPS) - Computation (Details)", "role": "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails", "shortName": "EARNINGS PER SHARE (EPS) - Computation (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_lWjZElVIFEWnkwLagldLnQ", "decimals": "-3", "lang": null, "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_FbmXRJ17y02nmUOZPK2yDQ", "xsiNil": "false" } }, "R73": { "firstAnchor": { "ancestors": [ "p", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_StockCompensationPlanMember_mWF9eltkmkaXSKGetcgujQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_PBufvJVoMUmfH-t2QxbTzw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41102 - Disclosure - EARNINGS PER SHARE (EPS) - Antidilutive Securities (Details)", "role": "http://www.willdan.com/role/DisclosureEarningsPerShareEpsAntidilutiveSecuritiesDetails", "shortName": "EARNINGS PER SHARE (EPS) - Antidilutive Securities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_7_2_2022_To_9_30_2022_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_us-gaap_StockCompensationPlanMember_mWF9eltkmkaXSKGetcgujQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_PBufvJVoMUmfH-t2QxbTzw", "xsiNil": "false" } }, "R74": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_3_8_2022_To_3_8_2022_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_wldn_CreditAgreement2019Member_us-gaap_LongtermDebtTypeAxis_us-gaap_NotesPayableToBanksMember_Cpb0q4bXOUa_SrBUEADUMw", "decimals": "4", "first": true, "lang": null, "name": "us-gaap:LineOfCreditFacilityCommitmentFeePercentage", "reportCount": 1, "unitRef": "Unit_Standard_pure_D9B3M_vJrkCbmo6vz7iesw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41301 - Disclosure - SUBSEQUENT EVENTS (Details)", "role": "http://www.willdan.com/role/DisclosureSubsequentEventsDetails", "shortName": "SUBSEQUENT EVENTS (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:SubsequentEventsTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "As_Of_11_1_2022_us-gaap_DebtInstrumentAxis_wldn_CreditAgreement2019Member_us-gaap_LongtermDebtTypeAxis_us-gaap_NotesPayableToBanksMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_teE-cmpvCEG3UwRhnah6CA", "decimals": "INF", "lang": null, "name": "wldn:DebtInstrumentCovenantsTotalLeverageRatioAccessToAccordionFeatureHighEndOfRange", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_D9B3M_vJrkCbmo6vz7iesw", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10201 - Disclosure - RECENT ACCOUNTING PRONOUNCEMENTS", "role": "http://www.willdan.com/role/DisclosureRecentAccountingPronouncements", "shortName": "RECENT ACCOUNTING PRONOUNCEMENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10301 - Disclosure - REVENUES", "role": "http://www.willdan.com/role/DisclosureRevenues", "shortName": "REVENUES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220930x10q.htm", "contextRef": "Duration_1_1_2022_To_9_30_2022_16nXuxHBvUOGBSIk-Yzi2Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 73, "tag": { "country_US": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "UNITED STATES", "terseLabel": "Domestic" } } }, "localname": "US", "nsuri": "http://xbrl.sec.gov/country/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Cover page.", "label": "Cover [Abstract]" } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2022", "xbrltype": "stringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r682" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r683" ], "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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "submissionTypeItemType" }, "dei_EntitiesTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Container to assemble all relevant information about each entity associated with the document instance", "label": "Entities [Table]" } } }, "localname": "EntitiesTable", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyFiscalYearsDetails" ], "xbrltype": "stringItemType" }, "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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressAddressLine2": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 2 such as Street or Suite number", "label": "Entity Address, Address Line Two" } } }, "localname": "EntityAddressAddressLine2", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r680" ], "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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r680" ], "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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r680" ], "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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInformationLineItems": { "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": "Entity Information [Line Items]" } } }, "localname": "EntityInformationLineItems", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyFiscalYearsDetails" ], "xbrltype": "stringItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r684" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r680" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r680" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r680" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r680" ], "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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r679" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r681" ], "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/2022", "presentation": [ "http://www.willdan.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/2022", "presentation": [ "http://www.willdan.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "tradingSymbolItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r99", "r164", "r177", "r178", "r179", "r180", "r182", "r184", "r188", "r260", "r261", "r262", "r263", "r264", "r265", "r267", "r268", "r270", "r272", "r273" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]" } } }, "localname": "ConsolidationItemsAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationIntersegmentSalesDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails" ], "xbrltype": "stringItemType" }, "srt_ConsolidationItemsDomain": { "auth_ref": [ "r99", "r164", "r177", "r178", "r179", "r180", "r182", "r184", "r188", "r260", "r261", "r262", "r263", "r264", "r265", "r267", "r268", "r270", "r272", "r273" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]" } } }, "localname": "ConsolidationItemsDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationIntersegmentSalesDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r195", "r338", "r343", "r651" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "stringItemType" }, "srt_MaximumMember": { "auth_ref": [ "r254", "r255", "r256", "r257", "r278", "r311", "r416", "r422", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r649", "r652", "r677", "r678" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyFiscalYearsDetails", "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r254", "r255", "r256", "r257", "r278", "r311", "r416", "r422", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r649", "r652", "r677", "r678" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyFiscalYearsDetails", "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r195", "r338", "r343", "r651" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r248", "r254", "r255", "r256", "r257", "r278", "r311", "r370", "r416", "r422", "r426", "r427", "r428", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r649", "r652", "r677", "r678" ], "lang": { "en-us": { "role": { "label": "Range [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyFiscalYearsDetails", "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r248", "r254", "r255", "r256", "r257", "r278", "r311", "r370", "r416", "r422", "r426", "r427", "r428", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r649", "r652", "r677", "r678" ], "lang": { "en-us": { "role": { "label": "Range [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyFiscalYearsDetails", "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails" ], "xbrltype": "domainItemType" }, "srt_ScenarioForecastMember": { "auth_ref": [ "r115", "r421" ], "lang": { "en-us": { "role": { "label": "Forecast [Member]" } } }, "localname": "ScenarioForecastMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "domainItemType" }, "srt_ScenarioUnspecifiedDomain": { "auth_ref": [ "r115", "r120", "r253", "r421" ], "lang": { "en-us": { "role": { "label": "Scenario [Domain]" } } }, "localname": "ScenarioUnspecifiedDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [ "r192", "r193", "r338", "r342", "r650", "r668", "r669", "r670", "r671", "r672", "r673", "r674", "r675", "r676" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r192", "r193", "r338", "r342", "r650", "r666", "r668", "r669", "r670", "r671", "r672", "r673", "r674", "r675", "r676" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "stringItemType" }, "srt_StatementScenarioAxis": { "auth_ref": [ "r115", "r120", "r253", "r421", "r600" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]" } } }, "localname": "StatementScenarioAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "stringItemType" }, "stpr_CA": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CALIFORNIA" } } }, "localname": "CA", "nsuri": "http://xbrl.sec.gov/stpr/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "stpr_NY": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "NEW YORK" } } }, "localname": "NY", "nsuri": "http://xbrl.sec.gov/stpr/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountingStandardsUpdate202101Member": { "auth_ref": [ "r589", "r590", "r591", "r592", "r593" ], "lang": { "en-us": { "role": { "documentation": "Accounting Standards Update 2021-01 Reference Rate Reform (Topic 848): Scope Refinement.", "label": "Accounting Standards Update 2021-01 [Member]" } } }, "localname": "AccountingStandardsUpdate202101Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r33", "r597" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r197", "r198" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, Net, Current", "terseLabel": "Accounts receivable, net of allowance for doubtful accounts of $756 and $1,115 at September 30, 2022 and December 31, 2021, respectively" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableNetCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounts Receivable, after Allowance for Credit Loss, Current [Abstract]", "terseLabel": "Accounts receivable, allowance for doubtful accounts" } } }, "localname": "AccountsReceivableNetCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "stringItemType" }, "us-gaap_AccruedBonusesCurrent": { "auth_ref": [ "r37" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails": { "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 and payable for incentive compensation awarded to employees and directors or earned by them based on the terms of one or more relevant arrangements. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Bonuses, Current", "terseLabel": "Accrued bonuses" } } }, "localname": "AccruedBonusesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r37" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r27", "r48", "r49", "r50", "r638", "r660", "r664" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated other comprehensive loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r47", "r50", "r57", "r58", "r59", "r100", "r101", "r102", "r482", "r593", "r655", "r656" ], "lang": { "en-us": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "AOCI Attributable to Parent [Member]", "terseLabel": "Accumulated Other Comprehensive Income (Loss)" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "auth_ref": [ "r25" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.", "label": "Additional Paid in Capital, Common Stock", "terseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapitalCommonStock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r100", "r101", "r102", "r430", "r431", "r432", "r519" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital [Member]", "terseLabel": "Additional Paid-in Capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": { "auth_ref": [ "r0", "r1", "r2", "r3", "r4", "r106", "r107", "r108", "r110", "r120", "r201", "r202", "r209", "r210", "r211", "r212", "r215", "r216", "r430", "r431", "r432", "r447", "r448", "r449", "r450", "r469", "r470", "r471", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r518", "r519", "r520", "r521", "r522", "r531", "r532", "r534", "r535", "r536", "r537", "r541", "r542", "r552", "r553", "r561", "r562", "r563", "r564", "r587", "r589", "r590", "r591", "r592", "r593", "r613", "r614", "r615", "r653", "r654", "r655", "r656", "r657", "r658", "r659", "r660", "r661", "r662", "r663", "r664" ], "lang": { "en-us": { "role": { "documentation": "Information by amendment to accounting standards.", "label": "Accounting Standards Update [Axis]" } } }, "localname": "AdjustmentsForNewAccountingPronouncementsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "Shares Used to Pay Taxes on Stock Grants, Value", "negatedLabel": "Shares used to pay taxes on stock grants" } } }, "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r423", "r433", "r434" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.", "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition", "terseLabel": "Stock-based compensation expense" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Adjustments to reconcile net income (loss) to net cash provided by (used in) operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "auth_ref": [ "r31", "r199", "r217" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.", "label": "Allowance for Doubtful Accounts Receivable, Current", "terseLabel": "Accounts receivable, allowance for doubtful accounts" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r139" ], "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": "Antidilutive securities excluded from computation of earnings per share (in shares)" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsAntidilutiveSecuritiesDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "auth_ref": [ "r139" ], "lang": { "en-us": { "role": { "documentation": "Information by type of antidilutive security.", "label": "Antidilutive Securities [Axis]" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsAntidilutiveSecuritiesDetails" ], "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]" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsAntidilutiveSecuritiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "auth_ref": [ "r139" ], "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]" } } }, "localname": "AntidilutiveSecuritiesNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsAntidilutiveSecuritiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Assets": { "auth_ref": [ "r17", "r95", "r172", "r179", "r186", "r205", "r260", "r261", "r262", "r264", "r265", "r266", "r267", "r269", "r271", "r273", "r274", "r478", "r483", "r530", "r595", "r597", "r622", "r636" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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", "terseLabel": "Segment assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets [Abstract]" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsAndLiabilitiesLesseeAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets and Liabilities, Lessee [Abstract]" } } }, "localname": "AssetsAndLiabilitiesLesseeAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r10", "r32", "r95", "r205", "r260", "r261", "r262", "r264", "r265", "r266", "r267", "r269", "r271", "r273", "r274", "r478", "r483", "r530", "r595", "r597" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "Current assets:" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetLocationDomain": { "auth_ref": [ "r496", "r499" ], "lang": { "en-us": { "role": { "documentation": "Location in the balance sheet (statement of financial position).", "label": "Balance Sheet Location [Domain]" } } }, "localname": "BalanceSheetLocationDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BalanceSheetRelatedDisclosuresAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SUPPLEMENTAL FINANCIAL STATEMENT DATA" } } }, "localname": "BalanceSheetRelatedDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_BaseRateMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Minimum rate investor will accept.", "label": "Base Rate [Member]" } } }, "localname": "BaseRateMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).", "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Basis of Presentation" } } }, "localname": "BasisOfAccountingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent": { "auth_ref": [ "r472", "r473" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled within one year or the normal operating cycle, if longer.", "label": "Business Combination, Contingent Consideration, Liability, Current", "verboseLabel": "Contingent consideration payable" } } }, "localname": "BusinessCombinationContingentConsiderationLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent": { "auth_ref": [ "r472", "r473" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled beyond one year or the normal operating cycle, if longer.", "label": "Business Combination, Contingent Consideration, Liability, Noncurrent", "terseLabel": "Contingent consideration payable" } } }, "localname": "BusinessCombinationContingentConsiderationLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CaliforniaFranchiseTaxBoardMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Designated tax department of the government of the state of California.", "label": "California Franchise Tax Board [Member]" } } }, "localname": "CaliforniaFranchiseTaxBoardMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CapitalLeaseObligationsIncurred": { "auth_ref": [ "r89", "r90" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in lease obligation from new lease.", "label": "Capital Lease Obligations Incurred", "terseLabel": "Equipment acquired under finance leases" } } }, "localname": "CapitalLeaseObligationsIncurred", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r9", "r12", "r87" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r81", "r87", "r91" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents at end of period", "periodStartLabel": "Cash and cash equivalents at beginning of period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r81", "r543" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "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 increase (decrease) in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashFlowHedgingMember": { "auth_ref": [ "r493" ], "lang": { "en-us": { "role": { "documentation": "Hedge of the exposure to variability in the cash flows of a recognized asset or liability, or of a forecasted transaction, that is attributable to a particular risk.", "label": "Cash flow hedge" } } }, "localname": "CashFlowHedgingMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract]", "terseLabel": "Supplemental disclosures of noncash investing and financing activities:" } } }, "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_CashFlowOperatingActivitiesLesseeAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash Flow, Operating Activities, Lessee [Abstract]", "terseLabel": "Cash paid for amounts included in the measurement of lease liabilities:" } } }, "localname": "CashFlowOperatingActivitiesLesseeAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted": { "auth_ref": [ "r0", "r1", "r104", "r201", "r202", "r206", "r207", "r208", "r209", "r210", "r447", "r469", "r470", "r507", "r510", "r511", "r522", "r531", "r533", "r534", "r535", "r541", "r542", "r552", "r560", "r561", "r562", "r563", "r587", "r589", "r613", "r614", "r653", "r654" ], "lang": { "en-us": { "role": { "documentation": "Indicates (true false) whether accounting standards update was adopted.", "label": "Change in Accounting Principle, Accounting Standards Update, Adopted [true false]", "terseLabel": "Change in Accounting Principle, Accounting Standards Update, Adopted" } } }, "localname": "ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsDetails" ], "xbrltype": "booleanItemType" }, "us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdoptionDate": { "auth_ref": [ "r0", "r1", "r114", "r201", "r202", "r206", "r207", "r208", "r209", "r210", "r447", "r469", "r470", "r471", "r507", "r510", "r511", "r512", "r515", "r522", "r531", "r533", "r534", "r535", "r541", "r542", "r552", "r560", "r561", "r562", "r563", "r587", "r589", "r613", "r614", "r653", "r654" ], "lang": { "en-us": { "role": { "documentation": "Date accounting standards update was adopted, in YYYY-MM-DD format.", "label": "Change in Accounting Principle, Accounting Standards Update, Adoption Date", "terseLabel": "Change in Accounting Principle, Accounting Standards Update, Adoption Date" } } }, "localname": "ChangeInAccountingPrincipleAccountingStandardsUpdateAdoptionDate", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsDetails" ], "xbrltype": "dateItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r42", "r626", "r641" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.", "label": "Commitments and Contingencies", "terseLabel": "Commitments and contingencies" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsDisclosureTextBlock": { "auth_ref": [ "r252" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for significant arrangements with third parties, which includes operating lease arrangements and arrangements in which the entity has agreed to expend funds to procure goods or services, or has agreed to commit resources to supply goods or services, and operating lease arrangements. Descriptions may include identification of the specific goods and services, period of time covered, minimum quantities and amounts, and cancellation rights.", "label": "Commitments Disclosure [Text Block]", "terseLabel": "COMMITMENTS AND VARIABLE INTEREST ENTITIES" } } }, "localname": "CommitmentsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntities" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r100", "r101", "r519" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]", "terseLabel": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "stringItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r22" ], "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r22" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized (in shares)" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r22" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "periodEndLabel": "Balances (in shares)", "periodStartLabel": "Balances (in shares)", "terseLabel": "Common stock, shares issued (in shares)" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r22", "r312" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding", "terseLabel": "Common stock, shares outstanding (in shares)" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r22", "r597" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value, Issued", "verboseLabel": "Common stock, $0.01 par value, 40,000 shares authorized; 13,297 and 12,804 shares issued and outstanding at September 30, 2022 and December 31, 2021, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r53", "r55", "r56", "r64", "r630", "r644" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive income (loss)" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "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 income (loss):" } } }, "localname": "ComprehensiveIncomeNetOfTaxAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r153", "r154", "r195", "r527", "r528", "r667" ], "lang": { "en-us": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.", "label": "Concentration Risk Benchmark [Domain]" } } }, "localname": "ConcentrationRiskBenchmarkDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r153", "r154", "r195", "r527", "r528", "r665", "r667" ], "lang": { "en-us": { "role": { "documentation": "Information by benchmark of concentration risk.", "label": "Concentration Risk Benchmark [Axis]" } } }, "localname": "ConcentrationRiskByBenchmarkAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskByTypeAxis": { "auth_ref": [ "r153", "r154", "r195", "r527", "r528", "r665", "r667" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "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]" } } }, "localname": "ConcentrationRiskLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r153", "r154", "r195", "r527", "r528" ], "lang": { "en-us": { "role": { "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.", "label": "Concentration Risk, Percentage", "terseLabel": "Concentration risk percentage" } } }, "localname": "ConcentrationRiskPercentage1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTable": { "auth_ref": [ "r150", "r153", "r154", "r155", "r527", "r529", "r667" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskTypeDomain": { "auth_ref": [ "r153", "r154", "r195", "r527", "r528", "r667" ], "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]" } } }, "localname": "ConcentrationRiskTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConstructionContractorReceivableRetainage": { "auth_ref": [ "r24", "r609" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of right to consideration in exchange for good or service transferred to customer withheld under retainage provision in long-term contract or program when right to consideration is unconditional.", "label": "Construction Contractor, Receivable, Retainage", "terseLabel": "Retained accounts receivable" } } }, "localname": "ConstructionContractorReceivableRetainage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "auth_ref": [ "r318", "r320", "r339" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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" } } }, "localname": "ContractWithCustomerAssetNetCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerBasisOfPricingAxis": { "auth_ref": [ "r338", "r344" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ContractWithCustomerBasisOfPricingDomain": { "auth_ref": [ "r338", "r344" ], "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]" } } }, "localname": "ContractWithCustomerBasisOfPricingDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r318", "r319", "r339" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CorporateNonSegmentMember": { "auth_ref": [ "r177", "r178", "r179", "r180", "r182", "r188", "r190" ], "lang": { "en-us": { "role": { "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment.", "label": "Corporate, Non-Segment [Member]" } } }, "localname": "CorporateNonSegmentMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostDirectLabor": { "auth_ref": [ "r66" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_CostOfRevenue", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Cost of labor directly related to good produced and service rendered. Includes, but is not limited to, payroll cost and equity-based compensation.", "label": "Cost of Services, Direct Labor", "terseLabel": "Salaries and wages" } } }, "localname": "CostDirectLabor", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfRevenue": { "auth_ref": [ "r67", "r95", "r205", "r260", "r261", "r262", "r265", "r266", "r267", "r269", "r271", "r273", "r274", "r530" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.", "label": "Cost of Revenue", "totalLabel": "Total direct costs of contract revenue" } } }, "localname": "CostOfRevenue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfRevenueAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cost of Revenue [Abstract]", "terseLabel": "Direct costs of contract revenue (inclusive of directly related depreciation and amortization):" } } }, "localname": "CostOfRevenueAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_CostOfSalesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing cost of sales.", "label": "Cost of Sales [Member]" } } }, "localname": "CostOfSalesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerConcentrationRiskMember": { "auth_ref": [ "r151", "r195" ], "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]" } } }, "localname": "CustomerConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r467" ], "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]" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "DEBT OBLIGATIONS" } } }, "localname": "DebtDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_DebtDisclosureTextBlock": { "auth_ref": [ "r93", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r292", "r299", "r300", "r302", "r309" ], "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": "DEBT OBLIGATIONS" } } }, "localname": "DebtDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligations" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r18", "r19", "r20", "r94", "r99", "r275", "r276", "r277", "r278", "r279", "r280", "r282", "r288", "r289", "r290", "r291", "r293", "r294", "r295", "r296", "r297", "r298", "r305", "r306", "r307", "r308", "r557", "r623", "r624", "r635" ], "lang": { "en-us": { "role": { "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.", "label": "Debt Instrument [Axis]" } } }, "localname": "DebtInstrumentAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.", "label": "Debt Instrument, Basis Spread on Variable Rate", "terseLabel": "Spread on floating interest rate (as a percent)" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentCarryingAmount": { "auth_ref": [ "r20", "r303", "r624", "r635" ], "calculation": { "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails": { "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentFaceAmount": { "auth_ref": [ "r275", "r305", "r306", "r555", "r557", "r558" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Face (par) amount of debt instrument at time of issuance.", "label": "Debt Instrument, Face Amount", "terseLabel": "Initial outstanding principal" } } }, "localname": "DebtInstrumentFaceAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "auth_ref": [ "r39", "r276" ], "lang": { "en-us": { "role": { "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.", "label": "Debt Instrument, Interest Rate, Stated Percentage", "terseLabel": "Interest rate (as a percent)" } } }, "localname": "DebtInstrumentInterestRateStatedPercentage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Debt Instrument [Line Items]" } } }, "localname": "DebtInstrumentLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r40", "r94", "r99", "r275", "r276", "r277", "r278", "r279", "r280", "r282", "r288", "r289", "r290", "r291", "r293", "r294", "r295", "r296", "r297", "r298", "r305", "r306", "r307", "r308", "r557" ], "lang": { "en-us": { "role": { "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.", "label": "Debt Instrument, Name [Domain]" } } }, "localname": "DebtInstrumentNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentTable": { "auth_ref": [ "r40", "r94", "r99", "r275", "r276", "r277", "r278", "r279", "r280", "r282", "r288", "r289", "r290", "r291", "r293", "r294", "r295", "r296", "r297", "r298", "r301", "r305", "r306", "r307", "r308", "r313", "r314", "r315", "r316", "r554", "r555", "r557", "r558", "r634" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredFinanceCostsNet": { "auth_ref": [ "r288", "r556" ], "calculation": { "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails": { "order": 2.0, "parentTag": "us-gaap_LongTermDebt", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.", "label": "Debt Issuance Costs, Net", "negatedLabel": "Issuance costs and debt discounts" } } }, "localname": "DeferredFinanceCostsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r435", "r436" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 7.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 income taxes, net" } } }, "localname": "DeferredIncomeTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "auth_ref": [ "r85", "r96", "r446", "r456", "r457", "r458" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Deferred Income Tax Expense (Benefit)", "terseLabel": "Deferred income taxes, net" } } }, "localname": "DeferredIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsValuationAllowance": { "auth_ref": [ "r443" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.", "label": "Deferred Tax Assets, Valuation Allowance", "verboseLabel": "Valuation allowance" } } }, "localname": "DeferredTaxAssetsValuationAllowance", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanContributionsByEmployer": { "auth_ref": [ "r363", "r371", "r372", "r408", "r410", "r411" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of contribution received by defined benefit plan from employer which increases plan assets.", "label": "Defined Benefit Plan, Plan Assets, Contributions by Employer", "terseLabel": "Employer matching contributions" } } }, "localname": "DefinedBenefitPlanContributionsByEmployer", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedContributionPlanDisclosureLineItems": { "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": "Defined Contribution Plan Disclosure [Line Items]" } } }, "localname": "DefinedContributionPlanDisclosureLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan.", "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay", "terseLabel": "Defined contribution plan, employer matching contribution, percent of employees' gross pay" } } }, "localname": "DefinedContributionPlanEmployerMatchingContributionPercent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage employer matches of the employee's percentage contribution matched.", "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match", "terseLabel": "Defined contribution plan, employer matching contribution, percent of match" } } }, "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatch", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan.", "label": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent", "terseLabel": "Maximum employee contribution as a percentage of compensation under 401 (k) Plan" } } }, "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DefinedContributionPlanTable": { "auth_ref": [ "r412" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about defined contribution pension plans or defined contribution other postretirement plans, separately for pension plans and other postretirement benefit plans.", "label": "Defined Contribution Plan [Table]" } } }, "localname": "DefinedContributionPlanTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DefinedContributionPlanTaxStatusExtensibleList": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicates tax status of defined contribution plan designed to provide retirement benefits.", "label": "Defined Contribution Plan, Tax Status [Extensible Enumeration]", "terseLabel": "Defined Contribution Plan, Tax Status" } } }, "localname": "DefinedContributionPlanTaxStatusExtensibleList", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "enumerationSetItemType" }, "us-gaap_DepreciationAndAmortization": { "auth_ref": [ "r85", "r241" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 4.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.", "label": "Depreciation, Depletion and Amortization, Nonproduction", "terseLabel": "Depreciation and amortization" } } }, "localname": "DepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationDepletionAndAmortization": { "auth_ref": [ "r85", "r167" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeContractTypeDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset.", "label": "Derivative Contract [Domain]" } } }, "localname": "DerivativeContractTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DerivativeFixedInterestRate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fixed interest rate related to the interest rate derivative.", "label": "Derivative, Fixed Interest Rate", "terseLabel": "Fixed rate (as a percent)" } } }, "localname": "DerivativeFixedInterestRate", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DerivativeInstrumentRiskAxis": { "auth_ref": [ "r44", "r497", "r498", "r501", "r503" ], "lang": { "en-us": { "role": { "documentation": "Information by type of derivative contract.", "label": "Derivative Instrument [Axis]" } } }, "localname": "DerivativeInstrumentRiskAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "DERIVATIVE FINANCIAL INSTRUMENTS" } } }, "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": { "auth_ref": [ "r509", "r526" ], "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 FINANCIAL INSTRUMENTS" } } }, "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstruments" ], "xbrltype": "textBlockItemType" }, "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis": { "auth_ref": [ "r494", "r497", "r501" ], "lang": { "en-us": { "role": { "documentation": "Information by type of hedging relationship.", "label": "Hedging Relationship [Axis]" } } }, "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeLineItems": { "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 [Line Items]" } } }, "localname": "DerivativeLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeNotionalAmount": { "auth_ref": [ "r490", "r492" ], "lang": { "en-us": { "role": { "documentation": "Nominal or face amount used to calculate payment on derivative.", "label": "Derivative, Notional Amount", "terseLabel": "Notional amount" } } }, "localname": "DerivativeNotionalAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeTable": { "auth_ref": [ "r489", "r491", "r492", "r494", "r495", "r500", "r501", "r504", "r505", "r508", "r509" ], "lang": { "en-us": { "role": { "documentation": "Schedule that describes and identifies a derivative or group of derivatives on a disaggregated basis, such as for individual instruments, or small groups of similar instruments. May include a combination of the type of instrument, risks being hedged, notional amount, hedge designation, related hedged item, inception date, maturity date, or other relevant item.", "label": "Derivative [Table]" } } }, "localname": "DerivativeTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DevelopedTechnologyRightsMember": { "auth_ref": [ "r468" ], "lang": { "en-us": { "role": { "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property.", "label": "Developed Technology Rights [Member]" } } }, "localname": "DevelopedTechnologyRightsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataDevelopedTechnologyDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r338", "r341", "r342", "r343", "r344", "r345", "r346", "r347" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r338" ], "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": "Schedule of disaggregation of revenue" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "EARNINGS PER SHARE (EPS)" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r65", "r112", "r113", "r114", "r115", "r116", "r123", "r126", "r136", "r137", "r138", "r142", "r143", "r520", "r521", "r631", "r645" ], "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)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r65", "r112", "r113", "r114", "r115", "r116", "r126", "r136", "r137", "r138", "r142", "r143", "r520", "r521", "r631", "r645" ], "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)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDilutedAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Diluted [Abstract]", "terseLabel": "Earnings (loss) per share:" } } }, "localname": "EarningsPerShareDilutedAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r139", "r140", "r141", "r144" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Earnings Per Share [Text Block]", "terseLabel": "EARNINGS PER SHARE (EPS)" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEps" ], "xbrltype": "textBlockItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r2", "r57", "r58", "r59", "r100", "r101", "r102", "r107", "r117", "r119", "r145", "r212", "r312", "r317", "r430", "r431", "r432", "r449", "r450", "r519", "r544", "r545", "r546", "r547", "r548", "r550", "r593", "r655", "r656", "r657" ], "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]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_FinanceLeaseInterestExpense": { "auth_ref": [ "r570", "r577", "r585" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails": { "order": 1.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of interest expense on finance lease liability.", "label": "Finance Lease, Interest Expense", "verboseLabel": "Interest on lease liabilities" } } }, "localname": "FinanceLeaseInterestExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseInterestPaymentOnLiability": { "auth_ref": [ "r572", "r579" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of interest paid on finance lease liability.", "label": "Finance Lease, Interest Payment on Liability", "terseLabel": "Operating cash flow from finance leases" } } }, "localname": "FinanceLeaseInterestPaymentOnLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilitiesGrossDifferenceAmountAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Finance Lease Liabilities, Gross Difference, Amount [Abstract]", "terseLabel": "Finance" } } }, "localname": "FinanceLeaseLiabilitiesGrossDifferenceAmountAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Finance Lease Liabilities, Payments, Due [Abstract]", "terseLabel": "Finance" } } }, "localname": "FinanceLeaseLiabilitiesPaymentsDueAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinanceLeaseLiability": { "auth_ref": [ "r568", "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails": { "order": 2.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.", "label": "Finance Lease, Liability", "totalLabel": "Total finance lease obligations", "verboseLabel": "Total finance lease obligations" } } }, "localname": "FinanceLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails", "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Finance Lease Liability [Abstract]", "terseLabel": "Finance lease obligations" } } }, "localname": "FinanceLeaseLiabilityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinanceLeaseLiabilityCurrent": { "auth_ref": [ "r568" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails": { "order": 1.0, "parentTag": "us-gaap_FinanceLeaseLiability", "weight": 1.0 }, "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.", "label": "Finance Lease, Liability, Current", "netLabel": "Less: Current obligations", "terseLabel": "Finance lease obligations" } } }, "localname": "FinanceLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails", "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r584" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to finance lease liability recognized in statement of financial position.", "label": "Finance Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Summary of the Maturities of Finance Lease Liabilities" } } }, "localname": "FinanceLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FinanceLeaseLiabilityNoncurrent": { "auth_ref": [ "r568" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails": { "order": 2.0, "parentTag": "us-gaap_FinanceLeaseLiability", "weight": 1.0 }, "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 4.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 finance lease, classified as noncurrent.", "label": "Finance Lease, Liability, Noncurrent", "netLabel": "Noncurrent lease obligations", "terseLabel": "Finance lease obligations, less current portion" } } }, "localname": "FinanceLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails", "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDue": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease.", "label": "Finance Lease, Liability, Payments, Due", "totalLabel": "Total lease payments" } } }, "localname": "FinanceLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails", "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finance Lease, Liability, Payments, Due Next Twelve Months", "terseLabel": "2023" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finance Lease, Liability, Payments, Due Year Four", "terseLabel": "2026" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finance Lease, Liability, Payments, Due Year Three", "terseLabel": "2025" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finance Lease, Liability, Payments, Due Year Two", "terseLabel": "2024" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in remainder of current fiscal year.", "label": "Finance Lease, Liability, Payments, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails": { "order": 1.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease.", "label": "Finance Lease, Liability, Undiscounted Excess Amount", "negatedLabel": "Less: Imputed interest" } } }, "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesGrossDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeasePrincipalPayments": { "auth_ref": [ "r571", "r579" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow for principal payment on finance lease.", "label": "Repayments of Long-term Capital Lease Obligations", "negatedLabel": "Principal payments on finance leases", "terseLabel": "Financing cash flow from finance leases" } } }, "localname": "FinanceLeasePrincipalPayments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAsset": { "auth_ref": [ "r567" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease.", "label": "Finance Lease, Right-of-Use Asset", "totalLabel": "Total equipment and leasehold improvements, net" } } }, "localname": "FinanceLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization": { "auth_ref": [ "r570", "r577" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails": { "order": 2.0, "parentTag": "us-gaap_FinanceLeaseRightOfUseAsset", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated amortization of right-of-use asset from finance lease.", "label": "Finance Lease, Right-of-Use Asset, Accumulated Amortization", "negatedLabel": "Accumulated depreciation" } } }, "localname": "FinanceLeaseRightOfUseAssetAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Finance Lease, Right-of-Use Asset, after Accumulated Amortization [Abstract]", "terseLabel": "Finance leases (included in equipment and leasehold improvements, net):" } } }, "localname": "FinanceLeaseRightOfUseAssetAfterAccumulatedAmortizationAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinanceLeaseRightOfUseAssetAmortization": { "auth_ref": [ "r570", "r577", "r585" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails": { "order": 2.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease.", "label": "Finance Lease, Right-of-Use Asset, Amortization", "terseLabel": "Amortization expense", "verboseLabel": "Amortization of assets" } } }, "localname": "FinanceLeaseRightOfUseAssetAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetAmortizationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization": { "auth_ref": [ "r567" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails": { "order": 1.0, "parentTag": "us-gaap_FinanceLeaseRightOfUseAsset", "weight": 1.0 }, "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails": { "order": 2.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before accumulated amortization, of right-of-use asset from finance lease.", "label": "Finance Lease, Right-of-Use Asset, before Accumulated Amortization", "terseLabel": "Equipment under finance leases", "verboseLabel": "Equipment and leasehold improvements" } } }, "localname": "FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": { "auth_ref": [ "r569" ], "lang": { "en-us": { "role": { "documentation": "Indicates line item in statement of financial position that includes finance lease right-of-use asset.", "label": "Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]", "terseLabel": "Finance Lease, Right-of-Use Asset, Statement of Financial Position" } } }, "localname": "FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails" ], "xbrltype": "enumerationSetItemType" }, "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r582", "r585" ], "lang": { "en-us": { "role": { "documentation": "Weighted average discount rate for finance lease calculated at point in time.", "label": "Finance Lease, Weighted Average Discount Rate, Percent", "terseLabel": "Finance leases, weighted average discount rate" } } }, "localname": "FinanceLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesAdditionalInformationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r581", "r585" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Finance Lease, Weighted Average Remaining Lease Term", "verboseLabel": "Finance leases, weighted average remaining lease term" } } }, "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesAdditionalInformationDetails" ], "xbrltype": "durationItemType" }, "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": "Amortization Period (in years)" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r15", "r237" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "terseLabel": "Accumulated Amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r233", "r234", "r237", "r239", "r612", "r619" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataDevelopedTechnologyDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r237", "r619" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataIntangibleAssetsDetails": { "order": 1.0, "parentTag": "us-gaap_IntangibleAssetsGrossExcludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Total finite intangible assets" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataIntangibleAssetsDetails" ], "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]" } } }, "localname": "FiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataDevelopedTechnologyDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r233", "r236" ], "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]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataDevelopedTechnologyDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsPeriodIncreaseDecrease": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in carrying value of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Period Increase (Decrease)", "terseLabel": "In-process research and technology reclassified to developed technology" } } }, "localname": "FiniteLivedIntangibleAssetsPeriodIncreaseDecrease", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataDevelopedTechnologyDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiscalPeriod": { "auth_ref": [ "r474" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for determining an entity's fiscal year or other fiscal period. This disclosure may include identification of the fiscal period end-date, the length of the fiscal period, any reporting period lag between the entity and its subsidiaries, or equity investees. If a reporting lag exists, the closing date of the entity having a different period end is generally noted, along with an explanation of the necessity for using different closing dates. Any intervening events that materially affect the entity's financial position or results of operations are generally also disclosed.", "label": "Fiscal Period, Policy [Policy Text Block]", "terseLabel": "Fiscal Years" } } }, "localname": "FiscalPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_FiscalPeriodDuration": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Duration of a fiscal period, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Includes, but not limited to, weeks in a year or quarter.", "label": "Fiscal Period Duration", "terseLabel": "Length of fiscal period" } } }, "localname": "FiscalPeriodDuration", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyFiscalYearsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FixedPriceContractMember": { "auth_ref": [ "r344" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which amount of consideration is fixed.", "label": "Fixed price" } } }, "localname": "FixedPriceContractMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FurnitureAndFixturesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.", "label": "Furniture and Fixtures [Member]" } } }, "localname": "FurnitureAndFixturesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "domainItemType" }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "auth_ref": [ "r85" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 4.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) loss on sale/disposal of equipment" } } }, "localname": "GainLossOnSaleOfPropertyPlantEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_GeographicConcentrationRiskMember": { "auth_ref": [ "r152", "r667" ], "lang": { "en-us": { "role": { "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa).", "label": "Geographic Concentration Risk [Member]" } } }, "localname": "GeographicConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r14", "r218", "r220", "r227", "r231", "r597", "r621" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 3.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", "periodEndLabel": "Goodwill at end of period", "periodStartLabel": "Goodwill at beginning of period", "terseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillImpairmentLoss": { "auth_ref": [ "r85", "r219", "r224", "r230", "r231" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill, Impairment Loss", "verboseLabel": "Goodwill impairment" } } }, "localname": "GoodwillImpairmentLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Goodwill [Line Items]" } } }, "localname": "GoodwillLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GoodwillRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Goodwill [Roll Forward]", "terseLabel": "Changes in carrying value of goodwill" } } }, "localname": "GoodwillRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_HedgingRelationshipDomain": { "auth_ref": [ "r494" ], "lang": { "en-us": { "role": { "documentation": "Nature or intent of a hedge.", "label": "Hedging Relationship [Domain]" } } }, "localname": "HedgingRelationshipDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": { "auth_ref": [ "r85", "r240", "r245" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).", "label": "Impairment, Long-Lived Asset, Held-for-Use", "terseLabel": "Long-lived assets impairment" } } }, "localname": "ImpairmentOfLongLivedAssetsHeldForUse", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeAndExpensesLesseeAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income and Expenses, Lessee [Abstract]", "terseLabel": "Finance leases" } } }, "localname": "IncomeAndExpensesLesseeAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetAmortizationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r61", "r172", "r178", "r182", "r185", "r188", "r620", "r627", "r633", "r646" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Extraordinary Items, Noncontrolling Interest", "terseLabel": "Segment profit (loss) before income tax expense", "totalLabel": "Income (Loss) before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r246", "r249" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r249" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement.", "label": "Income Statement Location [Domain]" } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxAuthorityNameAxis": { "auth_ref": [ "r440" ], "lang": { "en-us": { "role": { "documentation": "Information by name of taxing authority.", "label": "Income Tax Authority, Name [Axis]" } } }, "localname": "IncomeTaxAuthorityNameAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails", "http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxAuthorityNameDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.", "label": "Income Tax Authority, Name [Domain]" } } }, "localname": "IncomeTaxAuthorityNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails", "http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "INCOME TAXES" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r97", "r438", "r442", "r445", "r454", "r459", "r461", "r462", "r463" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]", "terseLabel": "INCOME TAXES" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExaminationLineItems": { "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": "Income Tax Examination [Line Items]" } } }, "localname": "IncomeTaxExaminationLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxExaminationTable": { "auth_ref": [ "r441" ], "lang": { "en-us": { "role": { "documentation": "A summary of income tax examinations that an enterprise is currently subject to or that have been completed in the current period typically including a description of the examination, the jurisdiction conducting the examination, the tax year(s) under examination, the likelihood of an unfavorable settlement, the range of possible losses, the liability recorded, the Increase or Decrease in the liability from the prior period, and any penalties and interest that have been incurred or accrued.", "label": "Income Tax Examination [Table]" } } }, "localname": "IncomeTaxExaminationTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxExaminationYearUnderExamination": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tax year being audited in the income tax examination, in YYYY format.", "label": "Income Tax Examination, Year under Examination", "terseLabel": "Income tax examination, year under examination" } } }, "localname": "IncomeTaxExaminationYearUnderExamination", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails" ], "xbrltype": "gYearListItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r98", "r118", "r119", "r170", "r437", "r455", "r460", "r647" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "terseLabel": "Income tax expense (benefit)", "verboseLabel": "Income tax (benefit) expense" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesIncomeTaxExpenseBenefitDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r88" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.", "label": "Income Taxes Paid, Net", "terseLabel": "Income taxes" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r84" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "Increase (Decrease) in Accounts Payable", "terseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r84" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Accounts receivable" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "auth_ref": [ "r84" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.", "label": "Increase (Decrease) in Accrued Liabilities", "terseLabel": "Accrued liabilities" } } }, "localname": "IncreaseDecreaseInAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "auth_ref": [ "r84" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 9.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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r84", "r610" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 15.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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "verboseLabel": "Changes in operating assets and liabilities, net of effects from business acquisitions:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "auth_ref": [ "r84" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in operating assets classified as other.", "label": "Increase (Decrease) in Other Operating Assets", "negatedLabel": "Other assets" } } }, "localname": "IncreaseDecreaseInOtherOperatingAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherReceivables": { "auth_ref": [ "r84" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in receivables classified as other.", "label": "Increase (Decrease) in Other Receivables", "negatedLabel": "Other receivables" } } }, "localname": "IncreaseDecreaseInOtherReceivables", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r84" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedLabel": "Prepaid expenses and other current assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "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" } } }, "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "auth_ref": [ "r127", "r128", "r129", "r138", "r424" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails": { "order": 2.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", "verboseLabel": "Effect of dilutive stock options and restricted stock awards (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": { "auth_ref": [ "r238" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataIntangibleAssetsDetails": { "order": 2.0, "parentTag": "us-gaap_IntangibleAssetsGrossExcludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.", "label": "Indefinite-lived Intangible Assets (Excluding Goodwill)", "terseLabel": "In-process research and technology" } } }, "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IndefiniteLivedIntangibleAssetsPeriodIncreaseDecrease": { "auth_ref": [ "r238" ], "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.", "label": "Indefinite-lived Intangible Assets, Period Increase (Decrease)", "negatedLabel": "In-process research and technology reclassified to developed technology" } } }, "localname": "IndefiniteLivedIntangibleAssetsPeriodIncreaseDecrease", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataInProcessResearchAndTechnologyReclassifiedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IntangibleAssetsGrossExcludingGoodwill": { "auth_ref": [ "r14" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataIntangibleAssetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before accumulated amortization of intangible assets, excluding goodwill.", "label": "Intangible Assets, Gross (Excluding Goodwill)", "totalLabel": "Total intangible assets" } } }, "localname": "IntangibleAssetsGrossExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IntangibleAssetsGrossExcludingGoodwillAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Intangible Assets, Gross (Excluding Goodwill) [Abstract]" } } }, "localname": "IntangibleAssetsGrossExcludingGoodwillAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "auth_ref": [ "r232", "r235" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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": "Other intangible assets, net" } } }, "localname": "IntangibleAssetsNetExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestIncomeExpenseNonoperatingNet": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net amount of nonoperating interest income (expense).", "label": "Interest Income (Expense), Nonoperating, Net", "negatedLabel": "Interest expense, net", "terseLabel": "Interest expense, net" } } }, "localname": "InterestIncomeExpenseNonoperatingNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r79", "r82", "r88" ], "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, Net", "terseLabel": "Interest" } } }, "localname": "InterestPaidNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestRateSwapMember": { "auth_ref": [ "r502" ], "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 swap agreement" } } }, "localname": "InterestRateSwapMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDerivativeFinancialInstrumentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IntersegmentEliminationMember": { "auth_ref": [ "r164", "r177", "r178", "r179", "r180", "r182", "r184", "r188" ], "lang": { "en-us": { "role": { "documentation": "Eliminating entries used in operating segment consolidation.", "label": "Intersegment Eliminations [Member]" } } }, "localname": "IntersegmentEliminationMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationIntersegmentSalesDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LeaseCost": { "auth_ref": [ "r583", "r585" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lease cost recognized by lessee for lease contract.", "label": "Lease, Cost", "totalLabel": "Total net lease cost" } } }, "localname": "LeaseCost", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseCostAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Lease, Cost [Abstract]", "terseLabel": "Lease cost" } } }, "localname": "LeaseCostAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LeaseCostTableTextBlock": { "auth_ref": [ "r583" ], "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 the Lease Expense" } } }, "localname": "LeaseCostTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LeaseholdImprovementsMember": { "auth_ref": [ "r242" ], "lang": { "en-us": { "role": { "documentation": "Additions or improvements to assets held under a lease arrangement.", "label": "Leasehold Improvements [Member]" } } }, "localname": "LeaseholdImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LeasesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "LEASES" } } }, "localname": "LeasesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_LegalMattersAndContingenciesTextBlock": { "auth_ref": [ "r258" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for legal proceedings, legal contingencies, litigation, regulatory and environmental matters and other contingencies.", "label": "Legal Matters and Contingencies [Text Block]", "terseLabel": "CONTINGENCIES" } } }, "localname": "LegalMattersAndContingenciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Lessee Disclosure [Abstract]", "terseLabel": "Leases" } } }, "localname": "LesseeDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LesseeLeaseDescriptionLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Lessee, Lease, Description [Line Items]", "terseLabel": "Leases" } } }, "localname": "LesseeLeaseDescriptionLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LesseeLeaseDescriptionTable": { "auth_ref": [ "r576" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about lessee's leases.", "label": "Lessee, Lease, Description [Table]" } } }, "localname": "LesseeLeaseDescriptionTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LesseeOperatingLeaseExistenceOfOptionToExtend": { "auth_ref": [ "r575" ], "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": "Operating lease, option to extend" } } }, "localname": "LesseeOperatingLeaseExistenceOfOptionToExtend", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails" ], "xbrltype": "booleanItemType" }, "us-gaap_LesseeOperatingLeaseExistenceOfOptionToTerminate": { "auth_ref": [ "r575" ], "lang": { "en-us": { "role": { "documentation": "Indicates (true false) whether lessee has option to terminate operating lease.", "label": "Lessee, Operating Lease, Existence of Option to Terminate [true false]", "terseLabel": "Operating lease, option to terminate" } } }, "localname": "LesseeOperatingLeaseExistenceOfOptionToTerminate", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails" ], "xbrltype": "booleanItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r584" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.", "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Summary of the Maturities of Operating Lease Liabilities" } } }, "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.", "label": "Lessee, Operating Lease, Liability, Payments, Due", "totalLabel": "Total lease payments" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails", "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months", "terseLabel": "2023" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four", "terseLabel": "2026" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three", "terseLabel": "2025" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two", "terseLabel": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r584" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedLabel": "Less: Imputed interest" } } }, "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseRemainingLeaseTerm": { "auth_ref": [ "r574" ], "lang": { "en-us": { "role": { "documentation": "Remaining lease term of operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Lessee, Operating Lease, Remaining Lease Term", "terseLabel": "Operating lease, remaining lease term" } } }, "localname": "LesseeOperatingLeaseRemainingLeaseTerm", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_LesseeOperatingLeaseRenewalTerm": { "auth_ref": [ "r575" ], "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": "Operating lease, extension term" } } }, "localname": "LesseeOperatingLeaseRenewalTerm", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails" ], "xbrltype": "durationItemType" }, "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]" } } }, "localname": "LetterOfCreditMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r36", "r95", "r180", "r205", "r260", "r261", "r262", "r265", "r266", "r267", "r269", "r271", "r273", "r274", "r479", "r483", "r484", "r530", "r595", "r596" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r30", "r95", "r205", "r530", "r597", "r625", "r640" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r11", "r38", "r95", "r205", "r260", "r261", "r262", "r265", "r266", "r267", "r269", "r271", "r273", "r274", "r479", "r483", "r484", "r530", "r595", "r596", "r597" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "Current liabilities:" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityCommitmentFeePercentage": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used.", "label": "Line of Credit Facility, Commitment Fee Percentage", "terseLabel": "Commitment fee (as a percent)" } } }, "localname": "LineOfCreditFacilityCommitmentFeePercentage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r34" ], "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": "Maximum borrowing capacity" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LondonInterbankOfferedRateLIBORMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.", "label": "London Interbank Offered Rate (LIBOR) [Member]" } } }, "localname": "LondonInterbankOfferedRateLIBORMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LongTermDebt": { "auth_ref": [ "r20", "r289", "r304", "r305", "r306", "r624", "r637" ], "calculation": { "http://www.willdan.com/role/DisclosureDebtObligationsClassificationDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.", "label": "Long-term Debt", "terseLabel": "Subtotal", "totalLabel": "Subtotal" } } }, "localname": "LongTermDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsClassificationDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtCurrent": { "auth_ref": [ "r35" ], "calculation": { "http://www.willdan.com/role/DisclosureDebtObligationsClassificationDetails": { "order": 1.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.", "label": "Long-term Debt, Current Maturities", "terseLabel": "Less current portion of long-term debt" } } }, "localname": "LongTermDebtCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsClassificationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtNoncurrent": { "auth_ref": [ "r20" ], "calculation": { "http://www.willdan.com/role/DisclosureDebtObligationsClassificationDetails": { "order": 2.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.", "label": "Long-term Debt, Excluding Current Maturities", "terseLabel": "Long-term debt portion" } } }, "localname": "LongTermDebtNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsClassificationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermNotesPayable": { "auth_ref": [ "r40" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion.", "label": "Notes Payable, Noncurrent", "terseLabel": "Notes payable" } } }, "localname": "LongTermNotesPayable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongtermDebtCurrentAndNoncurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Long-term Debt, Current and Noncurrent [Abstract]" } } }, "localname": "LongtermDebtCurrentAndNoncurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsClassificationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LongtermDebtTypeAxis": { "auth_ref": [ "r40" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LongtermDebtTypeDomain": { "auth_ref": [ "r40", "r259" ], "lang": { "en-us": { "role": { "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.", "label": "Long-term Debt, Type [Domain]" } } }, "localname": "LongtermDebtTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LossContingencyAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONTINGENCIES" } } }, "localname": "LossContingencyAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r81" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "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", "totalLabel": "Net cash (used in) provided by financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "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": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r81" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "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", "totalLabel": "Net cash (used in) provided by investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "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": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r81", "r83", "r86" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "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", "totalLabel": "Net cash provided by operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "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": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r7", "r51", "r54", "r59", "r62", "r86", "r95", "r106", "r112", "r113", "r114", "r115", "r118", "r119", "r134", "r172", "r178", "r182", "r185", "r188", "r205", "r260", "r261", "r262", "r265", "r266", "r267", "r269", "r271", "r273", "r274", "r521", "r530", "r628", "r642" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic", "weight": 1.0 }, "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Attributable to Parent", "terseLabel": "Net income (loss)", "totalLabel": "Net income (loss)" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": { "auth_ref": [ "r112", "r113", "r114", "r115", "r123", "r124", "r135", "r138", "r172", "r178", "r182", "r185", "r188" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders.", "label": "Net Income (Loss) Available to Common Stockholders, Basic", "totalLabel": "Net income (loss) - basic" } } }, "localname": "NetIncomeLossAvailableToCommonStockholdersBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted": { "auth_ref": [ "r125", "r130", "r131", "r132", "r133", "r135", "r138" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities, and addition from assumption of issuance of common shares for dilutive potential common shares; of income (loss) available to common shareholders.", "label": "Net Income (Loss) Available to Common Stockholders, Diluted", "totalLabel": "Net income (loss) - diluted" } } }, "localname": "NetIncomeLossAvailableToCommonStockholdersDiluted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersDilutedAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Available to Common Stockholders, Diluted [Abstract]" } } }, "localname": "NetIncomeLossAvailableToCommonStockholdersDilutedAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "RECENT ACCOUNTING PRONOUNCEMENTS" } } }, "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "auth_ref": [ "r5", "r104", "r105", "r108", "r109", "r120", "r121", "r122", "r203", "r204", "r213", "r214", "r451", "r452", "r453", "r517", "r523", "r524", "r525", "r538", "r539", "r540", "r565", "r566", "r588", "r594", "r616", "r617", "r618", "r659", "r660", "r661", "r662", "r664" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.", "label": "New Accounting Pronouncements and Changes in Accounting Principles [Text Block]", "terseLabel": "RECENT ACCOUNTING PRONOUNCEMENTS" } } }, "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRecentAccountingPronouncements" ], "xbrltype": "textBlockItemType" }, "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "New Accounting Pronouncements or Change in Accounting Principle [Line Items]" } } }, "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable": { "auth_ref": [ "r0", "r1", "r2", "r3", "r4", "r103", "r106", "r107", "r108", "r110", "r111", "r114", "r120", "r142", "r201", "r202", "r209", "r210", "r211", "r212", "r215", "r216", "r430", "r431", "r432", "r447", "r448", "r449", "r450", "r469", "r470", "r471", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r518", "r519", "r520", "r521", "r522", "r531", "r532", "r534", "r535", "r536", "r537", "r541", "r542", "r552", "r553", "r561", "r562", "r563", "r564", "r587", "r589", "r590", "r591", "r592", "r593", "r613", "r614", "r615", "r653", "r654", "r655", "r656", "r657", "r658", "r659", "r660", "r661", "r662", "r663", "r664" ], "lang": { "en-us": { "role": { "documentation": "Summarization of the changes in an accounting principle or a new accounting pronouncement, including the line items affected by the change and the financial effects of the change on those particular line items.", "label": "Accounting Standards Update and Change in Accounting Principle [Table]" } } }, "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Accounting Pronouncements Recently Adopted and Recently Issued" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NewJerseyDivisionOfTaxationMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Designated tax department of the government of the state of New Jersey.", "label": "New Jersey Division of Taxation [Member]" } } }, "localname": "NewJerseyDivisionOfTaxationMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NewYorkStateDivisionOfTaxationAndFinanceMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Designated tax department of the government of the state of New York.", "label": "New York State Division of Taxation and Finance [Member]" } } }, "localname": "NewYorkStateDivisionOfTaxationAndFinanceMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r465" ], "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]" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NonoperatingIncomeExpense": { "auth_ref": [ "r70" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).", "label": "Nonoperating Income (Expense)", "totalLabel": "Total other expense, net" } } }, "localname": "NonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_NotesPayableCurrent": { "auth_ref": [ "r35" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying values as of the balance sheet date of the portions of long-term notes payable due within one year or the operating cycle if longer.", "label": "Notes Payable, Current", "terseLabel": "Notes payable" } } }, "localname": "NotesPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_NotesPayableOtherPayablesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A written promise to pay a note to a third party.", "label": "Notes Payable, Other Payables [Member]" } } }, "localname": "NotesPayableOtherPayablesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NotesPayableToBanksMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A written promise to pay a note to a bank.", "label": "Notes Payable to Banks [Member]" } } }, "localname": "NotesPayableToBanksMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NumberOfReportableSegments": { "auth_ref": [ "r160" ], "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 reporting segments" } } }, "localname": "NumberOfReportableSegments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanySegmentInformationDetails", "http://www.willdan.com/role/DisclosureRevenuesSegmentInformationDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentInformationDetails" ], "xbrltype": "integerItemType" }, "us-gaap_NumberOfStatesInWhichEntityOperates": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The number of states the entity operates in as of the balance sheet date.", "label": "Number of States in which Entity Operates", "terseLabel": "Number of states in which entity operates" } } }, "localname": "NumberOfStatesInWhichEntityOperates", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationGeographicalInformationDetails" ], "xbrltype": "integerItemType" }, "us-gaap_OccupancyNet": { "auth_ref": [ "r69", "r559", "r632" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of net occupancy expense that may include items, such as depreciation of facilities and equipment, lease expenses, property taxes and property and casualty insurance expense.", "label": "Occupancy, Net", "terseLabel": "Facilities and facility related" } } }, "localname": "OccupancyNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingExpenses": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 3.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.", "label": "Operating Expenses", "totalLabel": "Total general and administrative expenses" } } }, "localname": "OperatingExpenses", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingExpensesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Expenses [Abstract]", "terseLabel": "General and administrative expenses:" } } }, "localname": "OperatingExpensesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r172", "r178", "r182", "r185", "r188" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "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": "Income (Loss) from operations" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r578", "r585" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails": { "order": 3.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.", "label": "Operating Lease, Cost", "verboseLabel": "Operating lease cost" } } }, "localname": "OperatingLeaseCost", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesLeaseExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilitiesGrossDifferenceAmountAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Lease Liabilities, Gross Difference, Amount [Abstract]", "terseLabel": "Operating" } } }, "localname": "OperatingLeaseLiabilitiesGrossDifferenceAmountAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Lease Liabilities, Payments Due [Abstract]", "terseLabel": "Operating" } } }, "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r568" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "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": "Total lease liabilities", "verboseLabel": "Total lease liabilities" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails", "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability [Abstract]", "terseLabel": "Operating leases, lease liabilities" } } }, "localname": "OperatingLeaseLiabilityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r568" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails": { "order": 1.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 }, "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 7.0, "parentTag": "us-gaap_LiabilitiesCurrent", "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": "Lease liability", "verboseLabel": "Less: Current obligations" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails", "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r568" ], "calculation": { "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails": { "order": 2.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 }, "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 5.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 lease obligations", "verboseLabel": "Lease liability, less current portion" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails", "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesGrossDifferenceDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasePayments": { "auth_ref": [ "r573", "r579" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.", "label": "Operating Lease, Payments", "terseLabel": "Operating cash flow from operating leases" } } }, "localname": "OperatingLeasePayments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r567" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 4.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", "terseLabel": "Right-of-use assets" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesConsolidatedBalanceSheetDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r582", "r585" ], "lang": { "en-us": { "role": { "documentation": "Weighted average discount rate for operating lease calculated at point in time.", "label": "Operating Lease, Weighted Average Discount Rate, Percent", "terseLabel": "Operating leases, weighted average discount rate" } } }, "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesAdditionalInformationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r581", "r585" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Operating Lease, Weighted Average Remaining Lease Term", "terseLabel": "Operating leases, weighted average remaining lease term" } } }, "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesAdditionalInformationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_OperatingSegmentsMember": { "auth_ref": [ "r177", "r178", "r179", "r180", "r182", "r188" ], "lang": { "en-us": { "role": { "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Operating Segments [Member]" } } }, "localname": "OperatingSegmentsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OrderOrProductionBacklogMember": { "auth_ref": [ "r466" ], "lang": { "en-us": { "role": { "documentation": "Orders, production or production backlog arising from contracts such as purchase or sales orders acquired in a business combination.", "label": "Order or Production Backlog [Member]" } } }, "localname": "OrderOrProductionBacklogMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ORGANIZATION AND OPERATIONS OF THE COMPANY" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "auth_ref": [ "r8", "r488" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.", "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]", "terseLabel": "ORGANIZATION AND OPERATIONS OF THE COMPANY" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompany" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "auth_ref": [ "r37" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails": { "order": 2.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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r16" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 6.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 assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": { "auth_ref": [ "r46", "r48" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.", "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax", "terseLabel": "(Gain) loss on cash flow hedge valuations, net of tax", "verboseLabel": "Unrealized gain (loss) on derivative contracts, net of tax" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r52", "r55", "r57", "r58", "r60", "r63", "r312", "r544", "r549", "r550", "r629", "r643" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss).", "label": "Other Comprehensive Income (Loss), Net of Tax", "verboseLabel": "Net unrealized gain on derivative contracts" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r41" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 6.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 noncurrent liabilities" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r71" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_NonoperatingIncomeExpense", "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, net" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherReceivables": { "auth_ref": [ "r23" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount due from parties in nontrade transactions, classified as other.", "label": "Other Receivables", "terseLabel": "Other receivables" } } }, "localname": "OtherReceivables", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherSellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r68" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 5.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of selling, general and administrative expense classified as other.", "label": "Other Selling, General and Administrative Expense", "terseLabel": "Other" } } }, "localname": "OtherSellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ParentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Portion of equity, or net assets, in the consolidated entity attributable, directly or indirectly, to the parent. Excludes noncontrolling interests.", "label": "Parent [Member]" } } }, "localname": "ParentMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_PaymentsForRepurchaseOfOtherEquity": { "auth_ref": [ "r77" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow to reacquire equity classified as other.", "label": "Payments for Repurchase of Other Equity", "negatedLabel": "Cash used to pay taxes on stock grants" } } }, "localname": "PaymentsForRepurchaseOfOtherEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r74" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "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 equipment and leasehold improvements" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Preferred Stock, Number of Shares, Par Value and Other Disclosures [Abstract]", "terseLabel": "Preferred stock" } } }, "localname": "PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "stringItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r21", "r310" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.", "label": "Preferred Stock, Par or Stated Value Per Share", "terseLabel": "Preferred stock, par value (in dollars per share)" } } }, "localname": "PreferredStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r21" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.", "label": "Preferred Stock, Shares Authorized", "terseLabel": "Preferred stock, shares authorized (in shares)" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r21", "r310" ], "lang": { "en-us": { "role": { "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.", "label": "Preferred Stock, Shares Issued", "terseLabel": "Preferred stock, shares issued (in shares)" } } }, "localname": "PreferredStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r21" ], "lang": { "en-us": { "role": { "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.", "label": "Preferred Stock, Shares Outstanding", "terseLabel": "Preferred stock, shares outstanding (in shares)" } } }, "localname": "PreferredStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r21", "r597" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Preferred Stock, Value, Issued", "verboseLabel": "Preferred stock, $0.01 par value, 10,000 shares authorized, no shares issued and outstanding" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r32" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.", "label": "Prepaid Expense and Other Assets, Current", "terseLabel": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromLinesOfCredit": { "auth_ref": [ "r76", "r94" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 4.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 term loan facility and line of credit" } } }, "localname": "ProceedsFromLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromNotesPayable": { "auth_ref": [ "r76" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from a borrowing supported by a written promise to pay an obligation.", "label": "Proceeds from Notes Payable", "terseLabel": "Proceeds from notes payable" } } }, "localname": "ProceedsFromNotesPayable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "auth_ref": [ "r73" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "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 equipment" } } }, "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromStockOptionsExercised": { "auth_ref": [ "r75", "r429" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.", "label": "Proceeds from Stock Options Exercised", "terseLabel": "Proceeds from stock option exercise" } } }, "localname": "ProceedsFromStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromStockPlans": { "auth_ref": [ "r75" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow associated with the amount received from the stock plan during the period.", "label": "Proceeds from Stock Plans", "terseLabel": "Proceeds from sales of common stock under employee stock purchase plan" } } }, "localname": "ProceedsFromStockPlans", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r7", "r51", "r54", "r59", "r80", "r95", "r106", "r118", "r119", "r172", "r178", "r182", "r185", "r188", "r205", "r260", "r261", "r262", "r265", "r266", "r267", "r269", "r271", "r273", "r274", "r477", "r480", "r481", "r486", "r487", "r521", "r530", "r633" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.", "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "verboseLabel": "Net income (loss)" } } }, "localname": "ProfitLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization": { "auth_ref": [ "r243", "r570", "r577" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails": { "order": 2.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation and amortization from plant, property, and equipment and right-of-use asset from finance lease.", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization", "negatedLabel": "Accumulated depreciation and amortization" } } }, "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": { "auth_ref": [ "r244", "r577" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization", "terseLabel": "Equipment and leasehold improvements, net", "totalLabel": "Total equipment and leasehold improvements, net" } } }, "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization": { "auth_ref": [ "r17", "r242", "r567" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails": { "order": 1.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization", "totalLabel": "Equipment and leasehold improvements, gross" } } }, "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r244" ], "lang": { "en-us": { "role": { "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.", "label": "Property, Plant and Equipment, Type [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r13", "r242" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails": { "order": 1.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business 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, Gross", "terseLabel": "Equipment and leasehold improvements" } } }, "localname": "PropertyPlantAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Property, Plant and Equipment [Line Items]", "terseLabel": "EQUIPMENT AND LEASEHOLD IMPROVEMENTS" } } }, "localname": "PropertyPlantAndEquipmentLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r244" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table Text Block]", "terseLabel": "Schedule of equipment and leasehold improvements" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r242" ], "lang": { "en-us": { "role": { "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.", "label": "Property, Plant and Equipment, Type [Domain]" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ReconciliationFromSegmentTotalsToConsolidatedAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Segment Reconciliation [Abstract]", "terseLabel": "Segment reconciliation" } } }, "localname": "ReconciliationFromSegmentTotalsToConsolidatedAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable": { "auth_ref": [ "r179", "r182" ], "lang": { "en-us": { "role": { "documentation": "Identification, description, and amounts of all significant reconciling items in the reconciliation of total assets from reportable segments to the entity's consolidated assets.", "label": "Reconciliation of Assets from Segment to Consolidated [Table]" } } }, "localname": "ReconciliationOfAssetsFromSegmentToConsolidatedTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RepaymentsOfLinesOfCredit": { "auth_ref": [ "r78", "r94" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 6.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": "Repayments under term loan facility and line of credit" } } }, "localname": "RepaymentsOfLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfNotesPayable": { "auth_ref": [ "r78" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow for a borrowing supported by a written promise to pay an obligation.", "label": "Repayments of Notes Payable", "negatedLabel": "Payments on notes payable" } } }, "localname": "RepaymentsOfNotesPayable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ResidualValueOfLeasedAsset": { "auth_ref": [ "r586" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of residual asset covered by residual value guarantee. Excludes guarantee considered to be lease payments for lessor.", "label": "Residual Value of Leased Asset", "terseLabel": "Residual value guarantee" } } }, "localname": "ResidualValueOfLeasedAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r26", "r317", "r597", "r639", "r659", "r664" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r2", "r100", "r101", "r102", "r107", "r117", "r119", "r212", "r430", "r431", "r432", "r449", "r450", "r519", "r655", "r657" ], "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings [Member]", "terseLabel": "Retained Earnings" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_RetirementPlanNameAxis": { "auth_ref": [ "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422" ], "lang": { "en-us": { "role": { "documentation": "Information by name of plan designed to provide retirement benefits. Includes, but is not limited to, legal name of defined benefit and defined contribution plans.", "label": "Retirement Plan Name [Axis]" } } }, "localname": "RetirementPlanNameAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RetirementPlanNameDomain": { "auth_ref": [ "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422" ], "lang": { "en-us": { "role": { "documentation": "Name of plan designed to provide retirement benefits. Includes, but is not limited to, legal name of defined benefit and defined contribution plans.", "label": "Retirement Plan Name [Domain]" } } }, "localname": "RetirementPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "REVENUES" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r163", "r164", "r177", "r183", "r184", "r191", "r192", "r195", "r337", "r338", "r611" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "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": "Contract revenue", "verboseLabel": "Revenue" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationIntersegmentSalesDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerMember": { "auth_ref": [ "r153", "r195" ], "lang": { "en-us": { "role": { "documentation": "Revenue from satisfaction of performance obligation by transferring promised product and service to customer, when it serves as benchmark in concentration of risk calculation.", "label": "Revenue from Contract with Customer Benchmark [Member]" } } }, "localname": "RevenueFromContractWithCustomerMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "auth_ref": [ "r92", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r348" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for revenue from contract with customer.", "label": "Revenue from Contract with Customer [Policy Text Block]", "verboseLabel": "Revenue Recognition" } } }, "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromContractWithCustomerSegmentBenchmarkMember": { "auth_ref": [ "r153" ], "lang": { "en-us": { "role": { "documentation": "Revenue from specified business segment for satisfaction of performance obligation by transferring promised product and service to customer, when it serves as benchmark in concentration of risk calculation.", "label": "Revenue from Contract with Customer, Segment Benchmark [Member]" } } }, "localname": "RevenueFromContractWithCustomerSegmentBenchmarkMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r321", "r322", "r323", "r324", "r325", "r326", "r327", "r328", "r340", "r348" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "REVENUES" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRevenues" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenuesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Revenues [Abstract]" } } }, "localname": "RevenuesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "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]" } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "auth_ref": [ "r580", "r585" ], "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", "terseLabel": "Right-of-use assets obtained in exchange for lease liabilities for operating leases" } } }, "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SalesRevenueNetMember": { "auth_ref": [ "r153", "r195" ], "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": "Revenue Benchmark [Member]" } } }, "localname": "SalesRevenueNetMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "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": "Schedule of accrued liabilities" } } }, "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock": { "auth_ref": [ "r233" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.", "label": "Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]", "terseLabel": "Schedule of gross amounts and accumulated amortization of the Company's acquired identifiable intangible assets with finite useful lives" } } }, "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "auth_ref": [ "r139" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsAntidilutiveSecuritiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfDebtTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.", "label": "Schedule of Debt [Table Text Block]", "terseLabel": "Schedule of debt obligations, excluding obligations under capital leases" } } }, "localname": "ScheduleOfDebtTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r138" ], "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 number of weighted-average common shares outstanding used to compute basic and diluted EPS" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r233", "r236", "r612" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataDevelopedTechnologyDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfGoodwillTable": { "auth_ref": [ "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r231" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r229", "r230", "r231" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.", "label": "Schedule of Goodwill [Table Text Block]", "terseLabel": "Schedule of changes in the carrying value of goodwill by reporting unit" } } }, "localname": "ScheduleOfGoodwillTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "auth_ref": [ "r244" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table]" } } }, "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "auth_ref": [ "r172", "r175", "r181", "r228" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationIntersegmentSalesDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "auth_ref": [ "r172", "r175", "r181", "r228" ], "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 financial information with respect to the reportable segments" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember": { "auth_ref": [ "r506" ], "lang": { "en-us": { "role": { "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap that has its variable-rate leg referenced to Secured Overnight Financing Rate (SOFR) with no additional spread over SOFR on variable-rate leg.", "label": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]" } } }, "localname": "SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r159", "r163", "r164", "r165", "r166", "r167", "r168", "r169", "r170", "r171", "r172", "r173", "r174", "r177", "r178", "r179", "r180", "r182", "r183", "r184", "r185", "r186", "r188", "r195", "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r231", "r250", "r251", "r648" ], "lang": { "en-us": { "role": { "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Segments [Domain]" } } }, "localname": "SegmentDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentReportingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SEGMENT AND GEOGRAPHICAL INFORMATION" } } }, "localname": "SegmentReportingAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingAssetReconcilingItemLineItems": { "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, Asset Reconciling Item [Line Items]" } } }, "localname": "SegmentReportingAssetReconcilingItemLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingDisclosureOfEntitysReportableSegmentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Segment Reporting, Disclosure of Entity's Reportable Segments [Abstract]", "terseLabel": "Segment Information" } } }, "localname": "SegmentReportingDisclosureOfEntitysReportableSegmentsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanySegmentInformationDetails", "http://www.willdan.com/role/DisclosureRevenuesSegmentInformationDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r159", "r161", "r162", "r172", "r176", "r182", "r186", "r187", "r188", "r189", "r191", "r194", "r195", "r196" ], "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": "SEGMENT AND GEOGRAPHICAL INFORMATION" } } }, "localname": "SegmentReportingDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformation" ], "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]" } } }, "localname": "SegmentReportingInformationLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationIntersegmentSalesDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r84" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 3.0, "parentTag": "us-gaap_OperatingExpenses", "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" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "Shares Used to Pay Taxes on Stock Grants, Shares", "negatedLabel": "Shares used to pay taxes on stock grants (in shares)" } } }, "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r6", "r159", "r163", "r164", "r165", "r166", "r167", "r168", "r169", "r170", "r171", "r172", "r173", "r174", "r177", "r178", "r179", "r180", "r182", "r183", "r184", "r185", "r186", "r188", "r195", "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r231", "r247", "r250", "r251", "r648" ], "lang": { "en-us": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r2", "r43", "r57", "r58", "r59", "r100", "r101", "r102", "r107", "r117", "r119", "r145", "r212", "r312", "r317", "r430", "r431", "r432", "r449", "r450", "r519", "r544", "r545", "r546", "r547", "r548", "r550", "r593", "r655", "r656", "r657" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r100", "r101", "r102", "r145", "r611" ], "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/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockCompensationPlanMember": { "auth_ref": [ "r139" ], "lang": { "en-us": { "role": { "documentation": "Share-based payment arrangement in which award of equity shares are granted. Arrangement includes, but is not limited to, grantor incurring liability for product and service based on price of its shares.", "label": "Share-Based Payment Arrangement [Member]" } } }, "localname": "StockCompensationPlanMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsAntidilutiveSecuritiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": { "auth_ref": [ "r21", "r22", "r312", "r317" ], "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 in connection with employee stock purchase plan (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross": { "auth_ref": [ "r312", "r317" ], "lang": { "en-us": { "role": { "documentation": "Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards.", "label": "Stock Issued During Period, Shares, Restricted Stock Award, Gross", "terseLabel": "Issuance of restricted stock award and units (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "auth_ref": [ "r21", "r22", "r312", "r317", "r425" ], "lang": { "en-us": { "role": { "documentation": "Number of share options (or share units) exercised during the current period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period", "terseLabel": "Shares of common stock issued in connection with incentive stock plan (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": { "auth_ref": [ "r21", "r22", "r312", "r317" ], "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": "Shares of common stock issued in connection with employee stock purchase plan" } } }, "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross": { "auth_ref": [ "r21", "r22", "r312", "r317" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate value of stock related to Restricted Stock Awards issued during the period.", "label": "Stock Issued During Period, Value, Restricted Stock Award, Gross", "verboseLabel": "Issuance of restricted stock award and units" } } }, "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "auth_ref": [ "r43", "r312", "r317" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of stock issued as a result of the exercise of stock options.", "label": "Stock Issued During Period, Value, Stock Options Exercised", "terseLabel": "Shares of common stock issued in connection with incentive stock plan" } } }, "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r22", "r28", "r29", "r95", "r200", "r205", "r530", "r597" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "Stockholders' Equity Attributable to Parent", "totalLabel": "Total stockholders' equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "terseLabel": "Stockholders' equity:" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r2", "r3", "r58", "r95", "r100", "r101", "r102", "r107", "r117", "r205", "r212", "r317", "r430", "r431", "r432", "r449", "r450", "r475", "r476", "r485", "r519", "r530", "r544", "r545", "r550", "r593", "r656", "r657" ], "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": "Balances", "periodStartLabel": "Balances" } } }, "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "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]" } } }, "localname": "SubsequentEventLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventMember": { "auth_ref": [ "r551", "r599" ], "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]" } } }, "localname": "SubsequentEventMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventTable": { "auth_ref": [ "r551", "r599" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeAxis": { "auth_ref": [ "r551", "r599" ], "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/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeDomain": { "auth_ref": [ "r551", "r599" ], "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]" } } }, "localname": "SubsequentEventTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.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/2022", "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventsTextBlock": { "auth_ref": [ "r598", "r601" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.", "label": "Subsequent Events [Text Block]", "terseLabel": "SUBSEQUENT EVENTS" } } }, "localname": "SubsequentEventsTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEvents" ], "xbrltype": "textBlockItemType" }, "us-gaap_SupplementalBalanceSheetDisclosuresTextBlock": { "auth_ref": [ "r45" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity.", "label": "Supplemental Balance Sheet Disclosures [Text Block]", "terseLabel": "SUPPLEMENTAL FINANCIAL STATEMENT DATA" } } }, "localname": "SupplementalBalanceSheetDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementData" ], "xbrltype": "textBlockItemType" }, "us-gaap_SupplementalCashFlowInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Cash paid (received) during the period for:" } } }, "localname": "SupplementalCashFlowInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_TaxPeriodAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information about the period subject to enacted tax laws.", "label": "Tax Period [Axis]" } } }, "localname": "TaxPeriodAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_TaxPeriodDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Identified tax period.", "label": "Tax Period [Domain]" } } }, "localname": "TaxPeriodDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TaxYear2017Member": { "auth_ref": [ "r440" ], "lang": { "en-us": { "role": { "documentation": "Identified as tax year 2017.", "label": "Tax Year 2017 [Member]" } } }, "localname": "TaxYear2017Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TaxYear2018Member": { "auth_ref": [ "r440" ], "lang": { "en-us": { "role": { "documentation": "Identified as tax year 2018.", "label": "Tax Year 2018 [Member]" } } }, "localname": "TaxYear2018Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TaxYear2019Member": { "auth_ref": [ "r440" ], "lang": { "en-us": { "role": { "documentation": "Identified as tax year 2019.", "label": "Tax Year 2019 [Member]" } } }, "localname": "TaxYear2019Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesExaminationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TimeAndMaterialsContractMember": { "auth_ref": [ "r344" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which amount of consideration is based on time and materials consumed.", "label": "Time-and-materials" } } }, "localname": "TimeAndMaterialsContractMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TradeNamesMember": { "auth_ref": [ "r464" ], "lang": { "en-us": { "role": { "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.", "label": "Trade Names [Member]" } } }, "localname": "TradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsGrossAmountsAndAccumulatedAmortizationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TypeOfAdoptionMember": { "auth_ref": [ "r0", "r1", "r2", "r3", "r4", "r106", "r107", "r108", "r110", "r120", "r201", "r202", "r209", "r210", "r211", "r212", "r215", "r216", "r430", "r431", "r432", "r447", "r448", "r449", "r450", "r469", "r470", "r471", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r518", "r519", "r520", "r521", "r522", "r531", "r532", "r534", "r535", "r536", "r537", "r541", "r542", "r552", "r553", "r561", "r562", "r563", "r564", "r587", "r589", "r590", "r591", "r592", "r593", "r613", "r614", "r615", "r653", "r654", "r655", "r656", "r657", "r658", "r659", "r660", "r661", "r662", "r663", "r664" ], "lang": { "en-us": { "role": { "documentation": "Amendment to accounting standards.", "label": "Accounting Standards Update [Domain]" } } }, "localname": "TypeOfAdoptionMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureRecentAccountingPronouncementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued": { "auth_ref": [ "r439" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount accrued for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.", "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued", "terseLabel": "Liability for uncertain tax positions" } } }, "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesUncertainTaxPositionsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccruedAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued [Abstract]" } } }, "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccruedAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesUncertainTaxPositionsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_UnusualOrInfrequentItemAxis": { "auth_ref": [ "r72" ], "lang": { "en-us": { "role": { "documentation": "Information by an event or transaction that is unusual in nature or infrequent in occurrence, or both.", "label": "Unusual or Infrequent Item, or Both [Axis]" } } }, "localname": "UnusualOrInfrequentItemAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details" ], "xbrltype": "stringItemType" }, "us-gaap_UnusualOrInfrequentItemDomain": { "auth_ref": [ "r72" ], "lang": { "en-us": { "role": { "documentation": "Event or transaction that is unusual in nature or infrequent in occurrence, or both.", "label": "Unusual or Infrequent Item, or Both [Domain]" } } }, "localname": "UnusualOrInfrequentItemDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details" ], "xbrltype": "domainItemType" }, "us-gaap_UnusualOrInfrequentItemLineItems": { "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": "Unusual or Infrequent Item, or Both [Line Items]" } } }, "localname": "UnusualOrInfrequentItemLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details" ], "xbrltype": "stringItemType" }, "us-gaap_UnusualOrInfrequentItemTable": { "auth_ref": [ "r72" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about the nature and financial statement effect of an event or transaction that is unusual in nature or infrequent in occurrence, or both.", "label": "Unusual or Infrequent Item, or Both [Table]" } } }, "localname": "UnusualOrInfrequentItemTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details" ], "xbrltype": "stringItemType" }, "us-gaap_UseOfEstimates": { "auth_ref": [ "r146", "r147", "r148", "r149", "r156", "r157", "r158" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.", "label": "Use of Estimates, Policy [Policy Text Block]", "terseLabel": "Use of Estimates" } } }, "localname": "UseOfEstimates", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount": { "auth_ref": [ "r444" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in the valuation allowance for a specified deferred tax asset.", "label": "Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount", "verboseLabel": "Increase (decrease) in valuation allowance" } } }, "localname": "ValuationAllowanceDeferredTaxAssetChangeInAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ValuationAllowanceLineItems": { "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": "Valuation Allowance [Line Items]" } } }, "localname": "ValuationAllowanceLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ValuationAllowanceTable": { "auth_ref": [ "r443" ], "lang": { "en-us": { "role": { "documentation": "A listing of an entity's valuation allowances to reduce deferred tax assets to amounts which it is more likely than not will not be realized, including a description of the deferred tax assets for which the valuation allowance has been recorded and the amount of the valuation allowance.", "label": "Valuation Allowance [Table]" } } }, "localname": "ValuationAllowanceTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureIncomeTaxesValuationAllowanceDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of variable rate.", "label": "Variable Rate [Axis]" } } }, "localname": "VariableRateAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.", "label": "Variable Rate [Domain]" } } }, "localname": "VariableRateDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r125", "r138" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails": { "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", "totalLabel": "Weighted-average common shares outstanding-diluted (in shares)", "verboseLabel": "Diluted (in shares)" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]", "terseLabel": "Weighted-average shares outstanding:" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r123", "r138" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails": { "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 common shares outstanding (in shares)" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureEarningsPerShareEpsComputationDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "sharesItemType" }, "us-gaap_WorkersCompensationLiabilityCurrent": { "auth_ref": [ "r37" ], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails": { "order": 6.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 and payables pertaining to claims incurred of a workers compensation nature. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Workers' Compensation Liability, Current", "terseLabel": "Accrued workers' compensation insurance" } } }, "localname": "WorkersCompensationLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_AccountsReceivableNetCurrentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing accounts receivable, net, current.", "label": "Accounts receivable" } } }, "localname": "AccountsReceivableNetCurrentMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "domainItemType" }, "wldn_AccretionAndFairValueAdjustmentsContingentConsideration": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the combination of the amount recognized for the passage of time, typically for liabilities, that have been discounted to their net present values and the fair value adjustments of contingent consideration. Excludes accretion associated with asset retirement obligations", "label": "Accretion and fair value adjustments contingent consideration", "terseLabel": "Accretion and fair value adjustments of contingent consideration" } } }, "localname": "AccretionAndFairValueAdjustmentsContingentConsideration", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "wldn_AccruedSubcontractorCosts": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs related to Accrued Subcontractor Cost and services.", "label": "Accrued Subcontractor Costs", "terseLabel": "Accrued subcontractor costs" } } }, "localname": "AccruedSubcontractorCosts", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_AllocationOfFacilitiesCostsToDirectCostsOfContractRevenue": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of facilities costs allocated to direct costs of contract revenue.", "label": "Allocation Of Facilities Costs To Direct Costs Of Contract Revenue", "terseLabel": "Allocation of facilities costs to contract revenue" } } }, "localname": "AllocationOfFacilitiesCostsToDirectCostsOfContractRevenue", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "monetaryItemType" }, "wldn_AutomobilesTrucksAndFieldEquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Vehicles that are used primarily for transporting people, large vehicles primarily used for transporting cargo and long-lived, depreciable assets used for the primary purpose of field work.", "label": "Automobiles Trucks and Field Equipment [Member]" } } }, "localname": "AutomobilesTrucksAndFieldEquipmentMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "domainItemType" }, "wldn_BusinessAcquisitionContingentConsiderationCashPayment": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash payments resulting from the contingent consideration arrangement.", "label": "Business Acquisition, Contingent Consideration, Cash Payment", "negatedLabel": "Payments on contingent consideration" } } }, "localname": "BusinessAcquisitionContingentConsiderationCashPayment", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "wldn_CityOfElkGroveMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to the City of Elk Grove.", "label": "City of Elk Grove [Member]", "terseLabel": "City of Elk Grove" } } }, "localname": "CityOfElkGroveMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_CommercialMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Portfolio of total financing receivables related to commercial receivables.", "label": "Commercial" } } }, "localname": "CommercialMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "wldn_CommitmentsDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "COMMITMENTS AND VARIABLE INTEREST ENTITIES" } } }, "localname": "CommitmentsDisclosureAbstract", "nsuri": "http://www.willdan.com/20220930", "xbrltype": "stringItemType" }, "wldn_CompensationAndPayrollTaxesCurrent": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the carrying value as of the balance sheet date of obligations incurred and payable for statutory payroll taxes incurred through that date and obligations and payables pertaining to compensation to employees.", "label": "Compensation and Payroll Taxes Current", "terseLabel": "Compensation and payroll taxes" } } }, "localname": "CompensationAndPayrollTaxesCurrent", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_ComputerHardwareAndSoftwareMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Long-lived depreciable assets used as a part of information systems and capitalized costs of purchased software applications.", "label": "Computer Hardware and Software [Member]" } } }, "localname": "ComputerHardwareAndSoftwareMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "domainItemType" }, "wldn_CostOfSubcontractorServicesAndOtherDirectCosts": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_CostOfRevenue", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Subcontractor service costs and other direct costs incurred directly related to services rendered by an entity during the reporting period.", "label": "Cost of Subcontractor Services and Other Direct Costs", "terseLabel": "Subcontractor services and other direct costs" } } }, "localname": "CostOfSubcontractorServicesAndOtherDirectCosts", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "wldn_Covid19Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "COVID-19 [Member]", "label": "COVID-19 [Member]", "terseLabel": "Covid-19" } } }, "localname": "Covid19Member", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details" ], "xbrltype": "domainItemType" }, "wldn_Covid19PandemicPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of the accounting policy for the COVID-19 pandemic.", "label": "COVID-19 Pandemic [Policy Text Block]", "terseLabel": "Historical and Current Impact of Covid-19" } } }, "localname": "Covid19PandemicPolicyTextBlock", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyPolicies" ], "xbrltype": "textBlockItemType" }, "wldn_CreditAgreement2019AfterExtendedCovenantReliefPeriodMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Credit Agreement 2019, After Extended Covenant Relief Period [Member]", "label": "Credit Agreement 2019, After Extended Covenant Relief Period [Member]" } } }, "localname": "CreditAgreement2019AfterExtendedCovenantReliefPeriodMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "wldn_CreditAgreement2019DuringExtendedCovenantReliefPeriodMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Credit Agreement 2019, During Extended Covenant Relief Period [Member]", "label": "Credit Agreement 2019, During Extended Covenant Relief Period [Member]" } } }, "localname": "CreditAgreement2019DuringExtendedCovenantReliefPeriodMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "wldn_CreditAgreement2019Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Credit Agreement 2019 [Member]", "label": "Credit Agreement 2019 [Member]" } } }, "localname": "CreditAgreement2019Member", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "wldn_DebtInstrumentBasisSpreadOnVariableRateInterestPeriod": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Basis Spread on Variable Rate, Interest Period", "label": "Debt Instrument, Basis Spread on Variable Rate, Interest Period", "terseLabel": "Spread on floating interest rate, interest period (as a percent)" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRateInterestPeriod", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "percentItemType" }, "wldn_DebtInstrumentCovenantMaximumCapitalExpenditures": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The maximum amount of capital expenditures subject to debt covenant.", "label": "Debt Instrument Covenant Maximum Capital Expenditures", "terseLabel": "Maximum capital expenditure, debt covenant" } } }, "localname": "DebtInstrumentCovenantMaximumCapitalExpenditures", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_DebtInstrumentCovenantsCovenantReliefPeriodMaximumCapitalExpenditures": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Covenant Relief Period, Maximum Capital Expenditures", "label": "Debt Instrument, Covenants, Covenant Relief Period, Maximum Capital Expenditures", "terseLabel": "Maximum capital expenditures during Relief Period" } } }, "localname": "DebtInstrumentCovenantsCovenantReliefPeriodMaximumCapitalExpenditures", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_DebtInstrumentCovenantsCovenantReliefPeriodTermLoanAvailableFunds": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Covenant Relief Period, Term Loan, Available Funds", "label": "Debt Instrument, Covenants, Covenant Relief Period, Term Loan, Available Funds", "terseLabel": "Available funds from the Delayed Draw Term Loan" } } }, "localname": "DebtInstrumentCovenantsCovenantReliefPeriodTermLoanAvailableFunds", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_DebtInstrumentCovenantsMinimumFixedChargeCoverageRatio": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The minimum fixed charge coverage ratio (measured as the sum of EBITDA plus rent expense less unfinanced capital expenditures divided by the sum of rent expense plus principal payments plus cash taxes plus cash interest plus restricted payments plus distributions) as a covenant under the credit agreement.", "label": "Debt Instrument, Covenants, Minimum Fixed Charge Coverage Ratio", "terseLabel": "Minimum fixed charge coverage ratio" } } }, "localname": "DebtInstrumentCovenantsMinimumFixedChargeCoverageRatio", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsPurchaseMoneyIndebtednessAndCapitalizedLeaseObligations": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Purchase Money Indebtedness and Capitalized Lease Obligations", "label": "Debt Instrument, Covenants, Purchase Money Indebtedness and Capitalized Lease Obligations", "terseLabel": "Debt instrument, covenants, purchase money indebtedness and Capitalized Lease Obligations" } } }, "localname": "DebtInstrumentCovenantsPurchaseMoneyIndebtednessAndCapitalizedLeaseObligations", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioAccessToAccordionFeatureHighEndOfRange": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Access to Accordion Feature, High End of Range", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Access to Accordion Feature, High End of Range", "terseLabel": "Debt instrument, covenants, Total Leverage Ratio, access to accordion feature, high end of range" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioAccessToAccordionFeatureHighEndOfRange", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughApril22021": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through April 2, 2021", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through April 2, 2021", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, April 2, 2021" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughApril22021", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughDecember302021": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through December 30, 2021", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through December 30, 2021", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through December 30, 2021" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughDecember302021", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJanuary12021": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through January 1, 2021", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through January 1, 2021", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, January 1, 2021" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJanuary12021", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJuly22021": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through July 2, 2021", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through July 2, 2021", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, July 2, 2021" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJuly22021", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune262020": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through June 26, 2020", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through June 26, 2020", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through June 26, 2020" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune262020", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune302021": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through June 30, 2021", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through June 30, 2021", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through June 30, 2021" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune302021", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune302022AndThereafter": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through June 30, 2022 and Thereafter", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through June 30, 2022 and Thereafter", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through June 30, 2022 and thereafter" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune302022AndThereafter", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughMarch312022": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through March 31, 2022", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through March 31, 2022", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through March 31, 2022" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughMarch312022", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughOctober12021AndThereafter": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through October 1, 2021 and Thereafter", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through October 1, 2021 and Thereafter", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, October 1, 2021 and thereafter" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughOctober12021AndThereafter", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughSeptember252020": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through September 25, 2020", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through September 25, 2020", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, September 25, 2020" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughSeptember252020", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughSeptember302021": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through September 30, 2021", "label": "Debt Instrument, Covenants, Total Leverage Ratio, Maximum Permitted to Maintain, through September 30, 2021", "terseLabel": "Debt instrument, covenants, total leverage ratio, maximum permitted to maintain, through September 30, 2021" } } }, "localname": "DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughSeptember302021", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "pureItemType" }, "wldn_DefinedContributionPlanEmployerMatchingContributionAgeOfEmployees": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Defined Contribution Plan, Employer Matching Contribution, Age of Employees", "label": "Defined Contribution Plan, Employer Matching Contribution, Age of Employees", "terseLabel": "Attained age" } } }, "localname": "DefinedContributionPlanEmployerMatchingContributionAgeOfEmployees", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "integerItemType" }, "wldn_DefinedContributionPlanEmployerMatchingContributionServicePeriod": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period of services eligible to participate in defined contribution plan.", "label": "Defined Contribution Plan, Employer Matching Contribution, Service Period", "terseLabel": "Service period" } } }, "localname": "DefinedContributionPlanEmployerMatchingContributionServicePeriod", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "durationItemType" }, "wldn_DefinedContributionPlanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Defined Contribution Plan [Member]", "label": "Defined Contribution Plan [Member]" } } }, "localname": "DefinedContributionPlanMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "domainItemType" }, "wldn_DelayedDrawTermLoanFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information about Delayed draw term loan facility.", "label": "Delayed Draw Term Loan Facility [Member]" } } }, "localname": "DelayedDrawTermLoanFacilityMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails", "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "wldn_DiscountOnTradeAccountsReceivableSold": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount of discount related to trade accounts receivable sold.", "label": "Discount On Trade Accounts Receivable Sold", "terseLabel": "Discount on trade accounts receivable sold" } } }, "localname": "DiscountOnTradeAccountsReceivableSold", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccountsReceivableDetails" ], "xbrltype": "monetaryItemType" }, "wldn_EmployeeWithholdings": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The carrying value as of the balance sheet of the withholding of payables of employees.", "label": "Employee Withholdings", "terseLabel": "Employee withholdings" } } }, "localname": "EmployeeWithholdings", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_EnergyMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Energy [Member]", "label": "Energy [Member]", "terseLabel": "Energy" } } }, "localname": "EnergyMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails" ], "xbrltype": "domainItemType" }, "wldn_EngineeringConsultingServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Engineering Consulting Services [Member]", "label": "Engineering Consulting Services [Member]", "terseLabel": "Engineering and Consulting" } } }, "localname": "EngineeringConsultingServicesMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationSegmentAssetsDetails", "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationStatementOfOperationsDetails", "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataGoodwillDetails" ], "xbrltype": "domainItemType" }, "wldn_FinanceLeaseLiabilityPaymentsDueAfterYearFour": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 6.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finance Lease Liability Payments Due After Year Four", "terseLabel": "2027 and thereafter" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueAfterYearFour", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesFinanceLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_GovernmentsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Organization that is the governing authority of a community.", "label": "Government" } } }, "localname": "GovernmentsMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "wldn_IncreaseDecreaseInRightOfUseAssets": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 16.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in right of use assets.", "label": "Increase (Decrease) in Right Of Use Assets", "negatedLabel": "Right-of-use assets" } } }, "localname": "IncreaseDecreaseInRightOfUseAssets", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "wldn_LaborAndRelatedExpenseExcludingStockBasedCompensation": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate amount of expenditures for salaries and wages (excluding the portion of technical and nontechnical salaries and wages incurred in connection with revenue producing projects) and payroll taxes, bonuses and employee benefit costs for all company personnel, excluding equity-based compensation.", "label": "Labor and Related Expense Excluding Stock Based Compensation", "terseLabel": "Salaries and wages, payroll taxes and employee benefits", "verboseLabel": "Payroll taxes, bonuses and employee benefit costs for all Company personnel" } } }, "localname": "LaborAndRelatedExpenseExcludingStockBasedCompensation", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "wldn_LesseeBalanceSheetAndOtherInformationOfLeasesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of impact of leases adoption on balance sheet information.", "label": "Lessee Balance Sheet And Other Information Of Leases [Table Text Block]", "terseLabel": "Summary of Lease Information Presented on the Condensed Consolidated Balance Sheet" } } }, "localname": "LesseeBalanceSheetAndOtherInformationOfLeasesTableTextBlock", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesTables" ], "xbrltype": "textBlockItemType" }, "wldn_LesseeOperatingAndFinanceLeasesTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of operating and finance leases.", "label": "Lessee Operating And Finance Leases [Text Block]", "terseLabel": "LEASES" } } }, "localname": "LesseeOperatingAndFinanceLeasesTextBlock", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureLeases" ], "xbrltype": "textBlockItemType" }, "wldn_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails": { "order": 6.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee Operating Lease Liability Payments Due After Year Four", "terseLabel": "2027 and thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesOperatingLeasesMaturitiesOfLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_LesseeOperatingLeaseTerminateTerm": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the term in which the operating lease can be terminated.", "label": "Lessee Operating Lease, Terminate Term", "terseLabel": "Operating lease, terminate term" } } }, "localname": "LesseeOperatingLeaseTerminateTerm", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesGeneralInformationDetails" ], "xbrltype": "durationItemType" }, "wldn_LesseeOtherInformationAndSupplementalCashFlowInformationOfLeasesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of other information and supplemental cash flow information related to leases.", "label": "Lessee Other Information And Supplemental Cash Flow Information Of Leases [Table Text Block]", "terseLabel": "Summary of Other Information and Supplemental Cash Flow Information Related to Finance and Operating Leases" } } }, "localname": "LesseeOtherInformationAndSupplementalCashFlowInformationOfLeasesTableTextBlock", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesTables" ], "xbrltype": "textBlockItemType" }, "wldn_LineOfCreditFacilityMaximumBorrowingCapacityThroughDateWhichFinancialStatementsAndComplianceDocumentsReceivedByAdministrativeAgentForFiscalQuarterEnding31March2023": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Line of Credit Facility, Maximum Borrowing Capacity, through Date which Financial Statements and Compliance Documents Received by Administrative Agent for Fiscal Quarter Ending 31 March 2023", "label": "Line of Credit Facility, Maximum Borrowing Capacity, through Date which Financial Statements and Compliance Documents Received by Administrative Agent for Fiscal Quarter Ending 31 March 2023", "terseLabel": "Maximum borrowing capacity during the period from November 1, 2022 through the date on which financial statements and compliance documents have been received by the Administrative Agent for the fiscal quarter ending March 31, 2023" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacityThroughDateWhichFinancialStatementsAndComplianceDocumentsReceivedByAdministrativeAgentForFiscalQuarterEnding31March2023", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "monetaryItemType" }, "wldn_LosAngelesDepartmentOfWaterAndPowerAndConsolidatedEdisonOfNewYorkMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Los Angeles Department of Water and Power and Consolidated Edison of New York [Member]", "label": "Los Angeles Department of Water and Power and Consolidated Edison of New York [Member]", "terseLabel": "Los Angeles Department of Water and Power and Consolidated Edison of New York" } } }, "localname": "LosAngelesDepartmentOfWaterAndPowerAndConsolidatedEdisonOfNewYorkMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_LosAngelesDepartmentOfWaterAndPowerAndPuebloCountySchoolDistrictMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Los Angeles Department of Water and Power and Pueblo County School District [Member]", "label": "Los Angeles Department of Water and Power and Pueblo County School District [Member]", "terseLabel": "Los Angeles Department of Water and Power and Pueblo County School District" } } }, "localname": "LosAngelesDepartmentOfWaterAndPowerAndPuebloCountySchoolDistrictMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_LosAngelesDepartmentOfWaterAndPowerMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Los Angeles Department of Water and Power [Member]", "label": "Los Angeles Department of Water and Power [Member]", "terseLabel": "Los Angeles Department of Water and Power" } } }, "localname": "LosAngelesDepartmentOfWaterAndPowerMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_MaximumAggregateEarnOutPaymentsDuringReliefPeriod": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Maximum amount of earnout payments that the company can make during the Covenant Relief Period", "label": "Maximum Aggregate Earn Out Payments During Relief Period", "terseLabel": "Maximum aggregate amount of earn-out payments during Relief Period" } } }, "localname": "MaximumAggregateEarnOutPaymentsDuringReliefPeriod", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_MinimumLiquidityThresholdEarnOutPayments": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of liquidity the company must maintain, after giving effect to earn out payments, to allow for any earnout payments.", "label": "Minimum Liquidity Threshold Earn Out Payments", "terseLabel": "Minimum liquidity" } } }, "localname": "MinimumLiquidityThresholdEarnOutPayments", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_NumberOfVariableInterestEntity": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to number of variable entities.", "label": "Number of Variable Interest Entity", "terseLabel": "Number of VIEs" } } }, "localname": "NumberOfVariableInterestEntity", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesVariableInterestEntitiesDetails" ], "xbrltype": "integerItemType" }, "wldn_OperatingLeaseRentExpenses": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of operating lease expense. Excludes sublease income.", "label": "Operating Lease Rent Expenses", "terseLabel": "Rent expenses" } } }, "localname": "OperatingLeaseRentExpenses", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesRentExpenseDetails" ], "xbrltype": "monetaryItemType" }, "wldn_OtherDebtMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the other debt instruments of the entity.", "label": "Other Debt [Member]" } } }, "localname": "OtherDebtMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails" ], "xbrltype": "domainItemType" }, "wldn_PercentOfTotalRevenueComprisedOfContractsWhichIncludeSeparatePhasesOrElements": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The percentage of total revenue comprised of contracts which include separate phases or elements.", "label": "Percent Of Total Revenue Comprised Of Contracts Which Include Separate Phases Or Elements", "terseLabel": "Percent of revenue (as a percent)" } } }, "localname": "PercentOfTotalRevenueComprisedOfContractsWhichIncludeSeparatePhasesOrElements", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "percentItemType" }, "wldn_ProceedsFromExerciseOfRestrictedStockAwardsAndUnits": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from exercise of restricted stock awards and units.", "label": "Proceeds From Exercise Of Restricted Stock Awards And Units", "negatedLabel": "Restricted Stock Award and Units" } } }, "localname": "ProceedsFromExerciseOfRestrictedStockAwardsAndUnits", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "wldn_ProceedsFromSaleOfTradeAccountsReceivable": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of cash inflow from sale of trade accounts receivables.", "label": "Proceeds From Sale Of Trade Accounts Receivable", "terseLabel": "Cash proceeds from sale of trade receivables" } } }, "localname": "ProceedsFromSaleOfTradeAccountsReceivable", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccountsReceivableDetails" ], "xbrltype": "monetaryItemType" }, "wldn_ProvisionForDoubtfulAccountsCashFlowImpact": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash flow impact of the provision for doubtful accounts.", "label": "Provision for Doubtful Accounts Cash Flow Impact", "terseLabel": "Provision for doubtful accounts" } } }, "localname": "ProvisionForDoubtfulAccountsCashFlowImpact", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "wldn_PublicUtilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Government regulated service to public including, but not limited to, electricity, natural gas, water, sewage, telephone, and transportation.", "label": "Utilities" } } }, "localname": "PublicUtilityMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "wldn_PuebloCountySchoolDistrictDormitoryAuthorityStateOfNewYorkAndLosAngelesDepartmentOfWaterAndPowerMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Pueblo County School District, Dormitory Authority State of New York, and Los Angeles Department of Water and Power [Member]", "label": "Pueblo County School District, Dormitory Authority State of New York, and Los Angeles Department of Water and Power [Member]", "terseLabel": "Pueblo County School District, Dormitory Authority State of New York, and Los Angeles Department of Water and Power" } } }, "localname": "PuebloCountySchoolDistrictDormitoryAuthorityStateOfNewYorkAndLosAngelesDepartmentOfWaterAndPowerMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_PuebloCountySchoolDistrictMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Pueblo County School District [Member]", "label": "Pueblo County School District [Member]", "terseLabel": "Pueblo County School District" } } }, "localname": "PuebloCountySchoolDistrictMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_QualifiedCashOrDeferredArrangementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Qualified Cash or Deferred Arrangement [Member]", "label": "Qualified Cash or Deferred Arrangement [Member]" } } }, "localname": "QualifiedCashOrDeferredArrangementMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureCommitmentsAndVariableInterestEntitiesEmployeeBenefitPlansDetails" ], "xbrltype": "domainItemType" }, "wldn_RevenueOfTheEntityAsAnAgent": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the amount of revenue of the entity in which it acts solely in the capacity of an agent.", "label": "Revenue of the Entity as an Agent", "terseLabel": "Revenue of the entity recorded in which it acts solely in the capacity of an agent" } } }, "localname": "RevenueOfTheEntityAsAnAgent", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "monetaryItemType" }, "wldn_ScheduleOfByTypeAndReportableSegmentTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of contracts for revenue generating activities by type and by reporting segment.", "label": "Schedule of By Type And Reportable Segment [Table Text Block]", "terseLabel": "Schedule of Contracts by Reportable Segments and Type of Contracts" } } }, "localname": "ScheduleOfByTypeAndReportableSegmentTableTextBlock", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesTables" ], "xbrltype": "textBlockItemType" }, "wldn_TermAloanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to the Term loan A.", "label": "Term A Loan [Member]" } } }, "localname": "TermAloanMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "domainItemType" }, "wldn_TopTenCustomersNineMonthsEnded2021October01Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Top Ten Customers, Nine Months Ended 2021 October 01 [Member]", "label": "Top Ten Customers, Nine Months Ended 2021 October 01 [Member]", "terseLabel": "Top Ten Customers, Nine Months Ended 2021 October 01" } } }, "localname": "TopTenCustomersNineMonthsEnded2021October01Member", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_TopTenCustomersNineMonthsEnded2022September30Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Top Ten Customers, Nine Months Ended 2022 September 30 [Member]", "label": "Top Ten Customers, Nine Months Ended 2022 September 30 [Member]", "terseLabel": "Top Ten Customers, Nine Months Ended 2022 September 30" } } }, "localname": "TopTenCustomersNineMonthsEnded2022September30Member", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_TopTenCustomersThreeMonthsEnded2021October01Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Top Ten Customers, Three Months Ended 2021 October 01 [Member]", "label": "Top Ten Customers, Three Months Ended 2021 October 01 [Member]", "terseLabel": "Top Ten Customers, Three Months Ended 2021 October 01" } } }, "localname": "TopTenCustomersThreeMonthsEnded2021October01Member", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_TopTenCustomersThreeMonthsEnded2022September30Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Top Ten Customers, Three Months Ended 2022 September 30 [Member]", "label": "Top Ten Customers, Three Months Ended 2022 September 30 [Member]", "terseLabel": "Top Ten Customers, Three Months Ended 2022 September 30" } } }, "localname": "TopTenCustomersThreeMonthsEnded2022September30Member", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_UnitBasedContractMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which amount of consideration is unit based.", "label": "Unit-based" } } }, "localname": "UnitBasedContractMember", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "wldn_UnusualOrInfrequentItemContractsCancelledNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Unusual or Infrequent Item, Contracts Cancelled, Number", "label": "Unusual or Infrequent Item, Contracts Cancelled, Number", "terseLabel": "Number of contracts cancelled" } } }, "localname": "UnusualOrInfrequentItemContractsCancelledNumber", "nsuri": "http://www.willdan.com/20220930", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyHistoricalAndCurrentImpactOfCovid19Details" ], "xbrltype": "integerItemType" } }, "unitCount": 9 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21728-107793" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(4)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.M.Q2)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=SL108384541-122693" }, "r122": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "250", "URI": "https://asc.fasb.org/topic&trid=2122394" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1377-109256" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1707-109256" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1757-109256" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "28A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1500-109256" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1930-109256" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1930-109256" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1930-109256" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1930-109256" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(15))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e3842-109258" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258" }, "r144": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org/topic&trid=2144383" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(16))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8657-108599" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(17))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8672-108599" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(18))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(j)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8844-108599" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(19))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "34", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8981-108599" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8475-108599" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599" }, "r196": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "https://asc.fasb.org/topic&trid=2134510" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(d)(1)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(d)(2)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL120254519-210437" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL120320025-210437" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL120320025-210437" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(4)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=SL108378252-109267" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "((a)(1),(b))", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(c)(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=126905981&loc=d3e2420-110228" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2921-110230" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.P.4(d))", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747" }, "r252": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "https://asc.fasb.org/topic&trid=2144648" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751" }, "r258": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org/topic&trid=2127136" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123465755&loc=SL6230698-112601" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "69E", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "69F", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612" }, "r309": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "https://asc.fasb.org/topic&trid=2208564" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21475-112644" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21506-112644" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21521-112644" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21538-112644" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130533-203044" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130561-203045" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130563-203045" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130564-203045" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130543-203045" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r348": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org/topic&trid=49130388" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19,20)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(10)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(5)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(6)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(7)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(8)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(9)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(5)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(6)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(7)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(8)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(A)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(B)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(C)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(5)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(6)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(7)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(j)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(n)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(q)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(5)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(6)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(7)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2919-114920" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4587-114921" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "70", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(e)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(e)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(f)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(f)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(f)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126962052&loc=d3e4991-113900" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "2A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=SL79508275-113901" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11149-113907" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319" }, "r444": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r45": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "210", "URI": "https://asc.fasb.org/topic&trid=2122208" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331" }, "r463": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org/topic&trid=2144680" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "38", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5504-128473" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=128092918&loc=SL128093175-196984" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "25", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=6911189&loc=d3e6408-128476" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Subparagraph": "b", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=126966325&loc=d3e6819-128478" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=d3e5291-111683" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568447-111683" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568740-111683" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569616-111683" }, "r478": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r485": { "Name": "Accounting Standards Codification", "Paragraph": "4I", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4590271-111686" }, "r486": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686" }, "r487": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686" }, "r488": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org/topic&trid=2197479" }, "r489": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5579240-113959" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580" }, "r490": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5580258-113959" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)(ii)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41620-113959" }, "r494": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41620-113959" }, "r495": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41638-113959" }, "r496": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959" }, "r497": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959" }, "r498": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r499": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580" }, "r500": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r501": { "Name": "Accounting Standards Codification", "Paragraph": "4C", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959" }, "r502": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959" }, "r503": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959" }, "r504": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41641-113959" }, "r505": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41678-113959" }, "r506": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=124256753&loc=SL5864739-113975" }, "r507": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=121483254&loc=SL120254523-199619" }, "r508": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "25", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=121577467&loc=d3e76258-113986" }, "r509": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=d3e90205-114008" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580" }, "r510": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r511": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)(2)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r512": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)(3)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r513": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r514": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)(2)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r515": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r516": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r517": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r518": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(2)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r519": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580" }, "r520": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r521": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011" }, "r523": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011" }, "r524": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)(2)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011" }, "r525": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)(3)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011" }, "r526": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "815", "URI": "https://asc.fasb.org/topic&trid=2229140" }, "r527": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611" }, "r529": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580" }, "r530": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612" }, "r531": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL120254526-165497" }, "r532": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL120254526-165497" }, "r533": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL120254526-165497" }, "r534": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r535": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r536": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r537": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r538": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r539": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580" }, "r540": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r541": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL122642865-165497" }, "r542": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL122642865-165497" }, "r543": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906" }, "r544": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900" }, "r545": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r546": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r547": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r548": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r549": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580" }, "r550": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901" }, "r551": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901" }, "r552": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "832", "URI": "https://asc.fasb.org/extlink&oid=128342835&loc=SL128342857-244232" }, "r553": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "832", "URI": "https://asc.fasb.org/extlink&oid=128342835&loc=SL128342857-244232" }, "r554": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28541-108399" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399" }, "r556": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399" }, "r557": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629" }, "r558": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400" }, "r559": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "840", "URI": "https://asc.fasb.org/extlink&oid=123386454&loc=d3e45280-112737" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e557-108580" }, "r560": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL120154346-209984" }, "r561": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984" }, "r562": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984" }, "r563": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984" }, "r564": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984" }, "r565": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984" }, "r566": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(3)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984" }, "r567": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r568": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r569": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918631-209977" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067" }, "r570": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977" }, "r571": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977" }, "r572": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977" }, "r573": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977" }, "r574": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(1)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980" }, "r575": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980" }, "r576": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980" }, "r577": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r578": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r579": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067" }, "r580": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(2)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r581": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(3)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r582": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(4)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r583": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r584": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980" }, "r585": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971" }, "r586": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=124258985&loc=SL77919381-209981" }, "r587": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846" }, "r588": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846" }, "r589": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067" }, "r590": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r591": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r592": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(01)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r593": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r594": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r595": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r596": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r597": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766" }, "r598": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "855", "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662" }, "r599": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "205", "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124507222&loc=d3e1436-108581" }, "r600": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662" }, "r601": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "855", "URI": "https://asc.fasb.org/topic&trid=2122774" }, "r602": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r603": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r604": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r605": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r606": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r607": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r608": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991595-234733" }, "r609": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "910", "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991598-234733" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r610": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "912", "URI": "https://asc.fasb.org/extlink&oid=126938201&loc=d3e55415-109406" }, "r611": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856" }, "r612": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959" }, "r613": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r614": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r615": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r616": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(1)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r617": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(2)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r618": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(3)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r619": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "https://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r620": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "https://asc.fasb.org/extlink&oid=126941158&loc=d3e41242-110953" }, "r621": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r622": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r623": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(13))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r624": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r625": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r626": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r627": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r628": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r629": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(23))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(21))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r630": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(26))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r631": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r632": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.14(b))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r633": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884" }, "r634": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "470", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823" }, "r635": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(16))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r636": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r637": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r638": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r639": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(24))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r640": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r641": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.(a),19)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r642": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r643": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(19))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r644": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(22))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r645": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r646": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(8))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r647": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r648": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438" }, "r649": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r650": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441" }, "r651": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441" }, "r652": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117819544-158441" }, "r653": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r654": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r655": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r656": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r657": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r658": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(1)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r659": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(b)(2))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r660": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r661": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iii)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r662": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iv)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r663": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(1)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r664": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r665": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195" }, "r666": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "https://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014" }, "r667": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Topic": "954", "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594" }, "r668": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column B))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r669": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column C))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r670": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column D))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r671": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column E))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r672": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column F))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r673": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column G))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r674": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column H))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r675": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column I))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r676": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r677": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663" }, "r678": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "https://asc.fasb.org/extlink&oid=126945304&loc=d3e27327-108691" }, "r679": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r680": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r681": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r682": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a" }, "r683": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1" }, "r684": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.6)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.7)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=114868883&loc=SL114871943-224233" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3367-108585" }, "r8": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "205", "URI": "https://asc.fasb.org/topic&trid=2122149" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3000-108585" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4297-108586" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4304-108586" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4313-108586" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(c))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(f))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690" } }, "version": "2.1" } ZIP 93 0001558370-22-016314-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-22-016314-xbrl.zip M4$L#!!0 ( -*:8U7<^BXZ/A8 */N 1 =VQD;BTR,#(R,#DS,"YX M<:4$=OZ<-6] M[EPIV-)M@UCK#UK]4H.L7(P8;R M0IR-LK!W.V0ICYA28IK*'27&&BM*MW,-3*]OE%;+YW&'&-#8EB*8]:Z[84G? MYV=;[Y5NMWW3[G5Z/?CUOOOV_=N?E.EC6/,1!%R1XJJOS'C/] W>(L5!=(V= M,=IBMD,Z_G"U<9S=^W;[Y>7E^@4D-I!UK=M;P:AS>P-Z0(Y#R=)U\+U-MP.\ M0J[I@$ZLOUQDBM9!52;FFHA5B!2#;BWV'H2(MW9S;=,U--3IMO]X',V%?$'E M%].P)&3S*AMX1['.=18C>5U2,VCBMDUM$[X5A53.3 MY4W[CQ&Q/D>$=?:[#&%%24Q81IVLSH5%<64X-$?I4!H19(W0+E4.7A#C:D(/ M&7J_3QJ\.MAA9 MFKC%JV&*')AH6*MW'1JQ;KN60[/LT"N,M6=AI\CWK9%:2B 0X_T&1,:BMN\6.BKU>FV>MU#1])>0V2.KT\\Z;?L@5+":*(I839%FV(ZQ8/ N>[G;$6MG^(WC(+> ] MAV),NF M\Y\&6%T0PK"4359]>POZV/#)\1D/P>/:8AE0BUCDP]R3A7F^@/\>M?%BKDSN MH>AQ.M,^0KWA)TT9CN%OK8&^.O2(;>Y-^T5J%*<3YL/\IB+,ZORCF Z!RIN4T_3Z4A8C#I2 M[H=C6 N&\"NT(P7L2H5ZH50*L@PEE$N)"O;?"H@&=7WIH@W]X OX8V.()QBB MJNO4Q<:(H"4Q04;,*EM9-JLB$WI3U83\)I5(FXU=G,4NAE!DK?F>3&4,?,/* M5I'%J,@F_E[5)@X-*EZ+C45(6,0 +YW)TB1K;^_-W4:;"4DRD"\FR$?X7:=[ MC/! NULHD[O1\$%=#,$%X3[)@6T#8P483<08;-)U5 +)5)HB,!->0!J8,1&FCK7.%Z"F^*S:^"2ABLKP)(+71%1 M$8PWF3!&.2L^:T7P;C"5QG2R$V%I:^W]^8@\6:X5X!80]2" M29--,9UO$/R]$]M:U\G;/V&??P)H-JY^ %/RO6H9F.<39#ZV53;>B!SZ6,C7S#U,ZMV)L!CE/D9\\ MM.UQ4R+L&K2J'VM/89!9S@8[!'I7^HP[3EUTX/VVRH&W\D.LD69H5C\%G3NV M_ID?"F'*^'&1LR][')K"(1_TFVKGHO/%I/\_'R>C@3:;_Y>B_?8T7/S9 )^Y MU$[H&EGD7T)FF&_]#0M@Z&4L(&M_O,Y*4.0!"TML"#R&L:!V/H2] M)(0SK<_/?M1^?_(T7H#'I$QGDS'\[GMCLP$N![AG;+DX!2+_>3X8-VE@?-+& M3UJC]%-.7LL?L18 ]28)E-19:H-BSC$;)<\@\3,.$1E:S*%NZIQ74#L?O;=I MYZ2SX2=8ICYI$>R&X_EB]M3,>:7.1PN.0@N@D3C";J H"*BE1\L*%/]34O%> M**Q1=Z:ZP4G>$D?,.. ^?T*4H*6)AY:#00N."%&0)!R25/EP_3T)%[C5C\.% MMWOBCO3Y.-VDX>9'7!H\R>"SX9C83#;\T#XL;P"*1>'O PN/0('%*.#P= M(VFZ?/3>)-&3>\VH@;9LJ#4=Q_1*^:"]2X*6>-FDP4>2B_.7&[S=/">8.*:+%)%3Z+'7PDS+$IGVZAO"\NP'.&4*([ MO,HS,;JWE>VC!.\BNTG,#J7LYB"(R%_V15$\6?@K)$*:5O>V,:J3(SH9UB)' ME&\&%=+E&D!+A \>L 5C..IW98)91) /9%[ IZ7X7*/O%S0PGNMR'#[\&!^, MY)E[4:=QBP?;-CB#RM9PS*#(!MY6M8&@ MH0;XLP!_SR7#(_*,C>-[C<0;E^I6C#APWV#PN5O>?VS 0^KXCE]EBSE;RT6F M]JZJJ7D2MDPN8LHE3,$[J;Z@PK&,B*I$96VL]=+6&M7V%%-B&Y>PS.Q6BJPP M<:?%V:PP9F>>4(VYG<7FOM MB+8;6SE'$H% F7FUYLC,ON*[,J-\V[A-N2->)M% W.4<-JB(%AN+.(=%A'NM MR>IP#EG5*G*9%5E&M124Z 4M]DHY--N8QUG,PZ^0>_-[)29%YI#\$H"D.?AS M1'/C^_FL *JB]9IB;S\W6?FGF%7MH8!=D64DCT#D+"/>+)\M_(8;(SF'D?1M MBR-/OC+#/55/R'2]="83]G@H^PI4 M*9I<88_0\Y*R+H!M!R@VBO:$BO7&RRH701B8GT_ C'*LT&O6J:Q"IMY M@Y@NCZW/L>[?_"Q_?6T^?3["*1FK.3?91EM2#DTUP%=X-SOSJ"V]6CZ,,F]J M-RB=):'8=XR* [BGL,KWH4ZZ&3.R^6J"O-7R2*5-H)B@*(\T\\K&!L:O_+7/ M:%Y*_J>>+MY>47).Q7=FRWWQ,Y:GTWR#ZKS?=IQ26\>,S4 MB.H;,)-#RLL, MZ_YWVG#UI+#R31097>)S)_+?@VSM/%F40!AA?I$DGZ@\C8U)'T2KAB%:ET\F MR*4H.G1.[!W#0^<#VV;QJH3DC.\/)+XOF%*O"+5$W#9$C3-K9O:S)P5D/3\I M,:"(:5%R0"(J4"HY(&A="9I7@O8;NSGC>5_Q+'X"IZ(P?J6;19M=R^6,(NL8 MKZ)E%+ K,H_D:RERYA%MMK&1ZD<#3Y:.*2C,@K^F_A>Y)C$-J]7K]'J=VYO./Z&[UZ]; M,ZC"^<<,Y'5)S6N;KML]@,,SD6,-^0T'+&#[G.#RVS=0NP*-NM(_CJV"LPE+*]BMM6'3MEHF793@$)-B_;G\I.DX,L M U%#W,_"''NKOA(VL+>P!@WP"KEFRAW)$B1Y,R7TK)-\IA;.5N%\ M%8^Q$G#^CB?'G]NOS'B/=CO^$HEXYC^Q+-OK@O>0/P,KM:FC6&B+V0[I!Q,2 MUL>P?KVVGV$PD3:WVRN%Z1N\12-;%WR\VBRK.O\A[/T:F@I,+;_9F.$;#FWS MT<29=5J=;JO7S9:@B%+\S2I* D/PUK-XBZ?+82-=CF,RD](858OS:75[K>Z[ MZH+$(.%_M0(Z+L8-%^.F*R]&E-];\9?A2 L0$/"6W\JWN4)L M*5BXK,7UR&2L,$JT1FCGF2*&,1^R.<4HHZ8@J8"(&3B53""U2R>I@3\IJ860 M(:-.*0&"^E[C\%?)AF-SB[BXA>[+3$=1DN"/4T1@SHZ6:3^L+WZEMXR]0R/1 M]([9$#@BO #M=U=4)5 E2O%@G6>1Q4_7#G4Y4Z,*%MZ7PO^<*6+=TR#QSMQ M4\!"M&>X7N9%3M_XN["'UYG[-O0!60Y[A,5NZV[OR2LV^AM$UY@74;3&,\XQ MTNVJ#*(:V?'MVFG:B';;FUA!(P@84:0['ZY6R#RX5REJ&*&E3<%'F6%QR8>_ MC=->==,UB+46'^>] P_-X!DL4.2K-=1"1?I+FH6!EY6MPOMR.Z8?P75[011# MS^;VRN$_'_%VB6FDZQ)UO6Z"%] 2J_Y[0SA_TAT]P.AUM-@")+JHNN"+VDL" MZ\^"NOIG?JAP3[!IA&?_B9[*D]2QPU'+ \&G: ^+H"GB(_Z]B4>@%E7^.G-: M.+@S.QJ\H?D[<38\:X-GC4:ZEEYM'OP#&SU:T\B MS)FLYNY2MRW!W:9S3)^)COEDZ)DDH5AW>$46ZV^\0(E:A;QS$[!R_:<$WP9._VG$BX-=P3YYS]XS-Q4_<"OSIW)G@V MD3Y7(3Y6@A,4G=$GE/$($C=?CK'CKW9)7T"BQ8CAIVOSF1;6_6W<,:A(7]O]#^!(L>_EW"-"^I)S1N;@E M5.-0UREN['+SG:Q24VGVD9X758QVD$#9&M,O/J*!V(BM.L<+4TZ=NOJ$FK6& M,8BY-\!-RC6Y?06K:6*FDJI=QZE*LS!=)U?5^.,Z"C[%5!>W3"QL!YE^7(CO MJ"CA!P:KOF]H[/<-T3=#BP<)8&W<(>",IQN>OSBAFL,BGNP)N#-KU!%Y[LV#%@DRT\(D1T5U[, ##])9PD 2/4@IJV,7 MIN[2)/J3D^Z3IY;6L1L#?N#H6SU9BJ;Y35-^]((^(D??>%-Z6.Y/ZMY=L;%] MR*FLHBMA(/N77P'>>ON8;C)T@"!#)?)RL(E]WR^YV12ZU MTL2QT#R&GG\!HJ1RSL>X7OH*3%W(RH,K_"X&\2-[6*35_?H3&Y=#-6UD)9:J M1$D=ERGQ]APVV#VUM_S>.W!.*3)P,CP2C^_*TM1UC^S=ZZNN*19/>YWN;=+C MRZY31R1'-E.M-1:7)<*6P?$NROL=A@H_V)S:+^ I''>Q!$T=NQPU1.V5>^<, M\_N^>*1==[ ACFW5%T0-'J3F.Q&68<;2U+5U.]+/\1_1*S_&[Z,=@>5"'&M# M$R[%+.9?EB7]*L.Z>#?J)RV,R%\N 5GWBPU(R\\(^>4S$]?QPYG1OLN3U'4J M\W%2_;OG\)'@ Y='CF;8)'B5V%E4H*VK&J(>\XB@I=@@'CJ"U15,:OP#E?>V M&YT"2]+5-::8YBN544-%^J^L#OD$(?^SEE-D&7A+]*EM$GV?YG<75:R)'\T/ MF[FW-;$R?*\YS&'1.5ZN?EW-F]^TI_O[F\/'&$24G*+W5<5WK238FEQYZ?:)#59/?JE@W?IN2( MY-:K8]=^ ZL2-]#PZ-&$0@\PA:E9I13!7C UI(X=KA _5]>P%0PR#=EI ML?AC7O4;IQDYX.*8RCZKQZR>@GZ^/<[QSQ&#JO;V8'A-M?*_*_!59+G@"7>AE]S(6&6O@ M>U6CNJ/$[%U,B5'VWZL*?W7-_>4T&.'^O2IPHCLVS%ABI/%+_C:88L2C$1=1 M:$YKWZN"^>)ZT[F@B1[8?Z\J#-?5"^HQT<;WJLP!UB^MR^,FOE=5/O++2&^Z MWENV%]!CC/_WJL1P NM=?OG);*O.RKU#C+#Y#F0U)E:05 []#1/+4S+;*M$? M!QG.G_EZQEUT\"-ZC';"L6QI?A>(C,I934;X_QSZ"U['4I\1$?+=NY9147=9 MO+YUO4U=F),1PX\@^WYH&5 +&^+5'\OP#87\"WO7MD>^IEVLQ,J,OQF-3EV\ M-.T^/R';S_6-;9L#XF6%I.0C%U6M8T1T8>\6V/+N<\*4C8G%T70V3 ,X#>X+ M^?N?3C>9UE:>]IM402_B:)=70AKU-Z &GOY2V12DB+]-)90Q!DGR.BHB>S8; MV-Q5M>E>=9V-30F4\\\P3%9C_/*G33_S#X!42$#\4@W64=D2XO/_Y=>B;!3S3#QMU>-;;$XC,.XE]C%/>KW=OTGC =F;^Y M,!!!DQ:_U>>F*\)*L'S>1(?MMR#M-[/3D8Y8J3K_L-&"_V]3 P2_QX@'&#Z2 M]084,%G->"9(E5B8+.>O%OGRKGOU[B;\Y=]02P,$% @ TIIC59#@[?6P M$P ZRL! !4 !W;&1N+3(P,C(P.3,P7V-A;"YX;6SM76V3XCB2_GX1]Q]\ MW)?=B*7+U'MU=.\&55#=1%! %/3.WJ<)88LJWQB;D^UZN5^_DC!@@V5+QN"T MF8B)G@*DE)[,5$I*I5+?_O$QM[4W3#S+=;XW6E_TAH8=PS4MY^5[(_":R#,L MJ_&/O__G?WS[KV;S7_?/?MKZ^KKU8TV>EJ7?*(=G%G916W+^>,K^V=*&]4H5,?[^N%9WQNOOK_X>G;V M_O[^Y?WBBTM>* &]=?:OI_[8>,5SU+0.@1L:+?_5XU_V70/YG$^1ZA]3 M8J\(7)RMVQ*68)^:JV)-]E6S==Z\:'WY\,Q&V$7VLT0CJ^(?.^5#3*V[N[LS M_NNZ*"5DI9!>PZ;"9]\;[[;I M-)D(]+L+G2'Y[[%/1V3";B>V2S5L:O&/M>0V/-_'KN MQ2%0+3*1\\5PYV?L]S,EBARM% O/#HMT_:LWG#VX\P7!K[2,]89[=)3-<2'8 M,]N R0WDO3[:[GLQ\A=0/B+RCN49MNL%!(^#!2W/.H/L1\NA>FDA>]W!#O)1 M]_\":\$^M!VSCVG[KZYM]JCDW+MPQK\IP+3G;P@.7WX0U_,Z MUFR&"=VZ[:GUDK1+1+^<9?"A=4*]&2@\*50?I"B7@KR+B$/UU!MA,GY%]/." MS[V!O]<$)TE5&;&!;(.NGQF1/OTM1,D:+W+7&V$G_O QK6&NO[5\UI:NMW1= M:VIKNO3OA^&@TQV,NQWVUWC8[W7:$_KAOMUO#QZZVOAGMSL9*V#FB"EFVS5B M7;*9_\0E<1$SZMON#9P30B_^'VYJEP1 MM=$4V]\;JR_/RNC+0T#H^/"WNI18YO?KBUO]HM6Z;%U=75]=Z7?Z5:33$:5I MDWC_$3%6].F?.WH4ETQ8XLP+YG-.K6E1X:_JSX@[WW L;,15Z;!+3$R^-UH- M+?!H/]P%:P/9#>T=6R^O/O_ER))@/@"ZFV7_8[O;-V2S?6S;?T"$?-(!_D]D M!U@@(:FZ<"0G+Z==V>:'*B/S!;%<.FU^?F^<'W\H&H8;4"S/V, 4%]U^#K"? M,3)3JM1#W,H(0RF?0QK9KN,39/B_6?[K0^#Y[AP3SHM,^4K4K(>8\P(-I7T! M=4P/_5=,-KJ[/>F+BM5#J%*H0@E> AJO(X(7R#)#3PJ=;#@0F9621,UZB#8O MT%#:5Z"D[2XP\3]'=&/"CA.B1PO1O>0SZ^!P]LM;>H7;,Y\"-HQ@SN2%S0Y> M$&Q82]$Y9GON$M_Z?_Y1J"R';AB.KHG7ZB5Q > RX8?KFFPW+5"7U<]5$&IJ M7\'/V3&'XI;>B2;PM#IQ+EQ3+IR#DY@Z )F)NTPQ;I_BT95D]\.P Q8HE#'4 M9*I60:BY<O(=#\5U#6@RZ^ 9IATVEP$]$_2Q MUD"!F,05JB KQ=Z' KN!.KXBAT5T,37V7>,/%F"#B<>69_[GE@RSBY?7?X&Z M14K T2]9MD>2HS>M2HV$J@Q3QKT"QV$M*>ST2C42 M=PZ@T-TS.18DF6[2O6B"5I?#K?(R&""S0=BHT<7Q_3"N\S+!9!Z=Y42>F(2B M<6$+HT+^J(]<5++'/09M>H@X3P0H2_/!5-:]E%85KTZ"#P?R$J< M>$:8(7?LF5BA%D)60P=]!9]YPB8N"$>:>4ZO)/$ =+6.2'CDRR&D7+P[O3;V_UJ@I/"AK P=GT7/W)RW7^V=7ZPWHYVX#ZIWS M!.YD6,O4&L<^C\3^QDJ)3B*C96)*?*WKMW>MDD>LA !B)X^9: NJ#<]?J38 ME][S@%J9T"5#!^X]GKD$KZ-DL=?]\ FB4"P'D<\>Y1[?RK-S==>F77OI.3XF MV!/9[@.V"$^%LG5B5X^.S2" 6KEV"&::D(22\+3@V!)-\; 68*$V*\;C*\8S M?L-.@%=LW([D65^58;'\]#]3/%?FH 1/L63%FK2H+ 8^0./QX'ITD@X!"E=* MD3)UDFLVL$S?4+,WY.0>%:LNS*, 7;=K:Q3FCLA*O(+!=+/TI*:U%?D)Q M\"W]^JKL.T%R\MD:K\5A![@.&AI&L$".\2F^P1LM4GV12J-2B_(K(;: )07- M&KSIA>LC305\ (_!U',,R:;%J;1054$"3#G&5W-CS+TQ/[!#^6 S).;<)YU06> R] E\G: M'H;]OJ8%1D<<%(R(2AD-=Y@R':H]_:H_]X6]P M']Y@G-AZ.."9+@>(95"6A0\+Q+^(E!QANM1C"=X(NU?4P>F?7-NAF+"TCFSP! M.%:I'(7:BA/;AVO0W\2@N.CTGA*RLRD 1RL*DLVNL#/ 0A=FU$]'_[9Q/C^F MJ.H)*$!N-@#RD3)7:W634BH._T.]:9;^N< =4.< ].P%J]7WT!G3N7$X MBST*L'X10* 2I/[JDXP93?Q;8JTR:JYU*;[Y M.^MGQ=HUEG<1G !X\E'X076MA)X#^(&S'@@&.$NBNEJ7/"*+\(O%;?-_ \_G M#@E!4J6DT9Z35(VUH'"VJ*4Z*\7WO;4]WGT14.P(SZQ:8U79FPVA:MQ"\I_O M@A&^'"BM%4(*)ZD<:MP(=>0N54?*S'&W"U#R2<;LBB>I'E),6#FB=-BF(WS$ M<+6A3GS,4%H[9(C%F75)N7Y;?XW)S9B5%HG]F2"TB,/8,$Q-:Y(JGZ262#-B MI16@CO7%:ZSTM*J9]4Y2%V1XL%(#2.'9B4BV'A11482MJJ>J"S)L6*D#I)AN MN;7U.D'I7ON5-9635!)UCJSTY5#Y7@6^L=VN;[VTFGCS-;M6C:6^#P=64A9[ M0,O>G@K8U'/>L+=/U$P" 3@Z C9J1I9KT"\&T(43=P1/W+9!.4>P\)%U452- M- $X6E60;!.B;O9C1F943@G[%8K P-CD]W 2SHIE-$2>0IPK5P">?"Q>1?;D M!L#P' &/EL\I[#$S)1" HR!@9R99KJD%^A05TW$?/IW#[:/'7F\%V$D^UP)O$JD:AXC34B%W2(-Z&B4Z:$ MJ$7%3T#42M"A1WI&P?2961O.'@@VA?&^PO(G)OAL[&KYVMLE.#%:\+^9B0&>8):<:7L0?"\B>@ VK8,Z,_ MFR4;A.C+?"-B49XLV$LE2X0"\:?6.0$54,>?&>!9MON)I<4;\EYYW0],#,O; MW$E.30';('&2OSH7QM06+. 50:%9Y)6+Z\Y/Y4-+&B%2>.,I8[?\[-AY^; M]Y^598Y82]QC[4;3JVZ@+O-NH,*FM4C;%=@5[3+L(2!D-WHEI5QA214H_=AC M0,*7DH2%XYI[J]_I=R69ATR^QI(=R(.!G@)M>>=14JGD*E5,J'N @O[22HCF MWG5H_S)DFEBVHJ*4QW+@Z!2!\>S.%[;[B3&['L2<=NS=\R2[F52N8B)1PZ$6 M,E*4.*)YB^C2:H0^V6,._+F'Y#$C6:N*HLJ)2B9[5YF6\#>7_(&)%T6WOH^7 M;AQU/=5MSFW59L&M:6+5=@4['-+.ZV M6[\3^,-U328+P0"1K7Q\;QX='WWKC9U^)O10[+5+K09GK.<3WI8W31TK0,=M MCX[AF1B+O"*KD8FSAS)'URNK"H5@+^WIB>CQ^]0?3FWKA1/A^6T[&7M=2-54[L0P)9G*6 OULY:_'W^H19M/W\,FE(0]Q'Y/ M?&M-%@9 LQCM.GLP5%ICLB/0D.Y[S?/' 4UST8P5\1XB:.9 M]USMR["HI5]?EYV!ISC=4($,,;M6?+VEC.N%@@3JL4OMT I'75;9Z&2=F,EU[QG-D44T@P]DC M%3JR_PHKE!'1'MBRS!M2L3-ZQ_8:?7,=_%44=YB5W MDEHDRP3=W5-U0BJGJC%I\ ^6U54#ZZP5YKFPB94U86(7ZU>U%%Y<.3[3I/:B!0@_R$ MZJ((!7, P+6IQ)TROR30L68S3#?YAG+(T\Y%J;3-,6]+VS3VYVYX4QW2+/'+ M,:E(6=PY>Q_98&]]I(7AYZ)573.A/%LHL0#ZUK<03WZ]A*\",F?HUH'GA.C) M4Z&^TSOA]! V62?/:6*@0O8!5) J M'G1U0B>@)?*XH0<"9[$FW;PFZD@87NP93"EN*YE*Y_ M0JH@A O=/RF#+L4O*5O]=%1!B+8<[V-6ES.]CDH$JBWF@O#*^!83!'W,3>5^ M;L:6+K^/K*"3\4 ;QQ)";!*[I.A.5*)1O?&??-RT/VB D99[WZ2* [W4[UH7 M]9%N(C@ 95=1!R6HG.$R?@5T<\+GD@I\)%R=I!6:S>14K?]/.@-?HRU4?=9 M&_]L/W>UOW1'X[^&"97"9BI@M0?8[SF4?[A/)YSV&^TL>P5YXE(4<]?A3V.Q M;*>8T'G/#GSA*X(YZ!QY',OW\!YYEK$W3DX%WMC/+?"H*2B""P!-?0R6C )4 M6;QBR63(NRK2_(VWC,WV&R;H!0^"^91Y(T.UYK."-PQ\ST<.2PLHD+, T]$OSV[OK]U;L.#ASB M>L'\MW=Q>(%"Q_/>_==__L__\>O_NKCX[][XH>,2)U[B(.HX%*,(NYU7+UIT MIF2U0D'G$5/J^7ZG1SUWCCN=ZZOWK-/W'SH7%VD?/12R-B3HB,YNWE]OO]RF M_9'@E\[U]>6'RYNKFQOVTR_7/_SRPT^=I\\.T7_I]G-FB' MD1J$O[R%WF_O%E&T^N7R\O7U]?WKA_>$SED'5]>7__WX,'$6>(DNO"",4.#@ M=QT&_TLH_OA '!0)/F6:OSU3?]/!A\OM6$H(_MO%!NR"_^GB^N;BP_7[M]!] MEZ+(/QL,L@%_VX-/:;K^^/'CI?BZ!64=>9JN,V1OX=UHVR +_,-E\O$=8W2G M\RLE/A[C64<,]TNT7N'?WH7>/R4%[<>:'CDS"F>$3G*/#^)12N&[BC%:;B M9X;C+5FRJ;:^9[#(_QTC&M[A"'E^:,B-0P?<,#$Y0^"&:%+(;;ZU);V:(722;QB\)SER+_W K: >\C?KFIW*$)\*5OQ M7YAV/F V/E_BF'Y2\I*(:HBC*7J.?41WW=9E4]/H .7Q)T)KS/DO&$J4=<*WS6H &4IW=LW??)"KM3["P"XI/YNCG.Z0:SPI\[ M)J,7)JT7O$5XP-P$&A]D.1CV:HGBYVCT['OSQ,CC)AX)O4,6)H,>05!*L>M% M]\CQ?(8T"DO[LT(E4[&E%XG)Q#:SKXAZB*W ;"W&%(=1 MGUGK7!)]UBE98]QCV,^\Z,E'06VA'V%$.^L_GJ>FZ"=,YA2M%MR-RPA2D! F M4!/DUY\6!XP$DS/;C6LTV_G$C7%'/QI0#J4 PO)ICC/246!RA(&B^9SB9&\8 MS5*GNC'>E(T'DTNW)."1E43)QU[XK3'^J$>RPIE!P(C 4_2&PZ_(CY.0F^^3 M5QZ6KLL$LTYMT]M_0TMF"Q^TB)9U9X7&/J*!%\Q#YNU-%HC]OF(60N2YGA]S M!V""G9@>9&]6'\"2I_DQQ3LN+_B$$O<8AGERG\Y:OG8GH1($K)*Z9FZ!>UQ*=TVQ\?\"+] MA:%^_?/%]?7%C4A4_EMQ+'-2MD-Y073I>LOM<,CWZ^&A5:$227 !EV?.#D"IG_X(PTI/X?,@'6VPO#1 M,_9%_8H&*"5-!71I@9HGMKIC&JUY5(2;[-D\61(F3:)-8V^^8%[PES )J7=G M$::9?,4=7E'L>)MT=3;@KN!0\P/_\4'!]W:&SDMS-Y6Z-"]7-L\W>,XH69;J M$&F;D#AD6)(5_Q5M-\QT=:J[/20"V3'E%SG1G2GIM$LLH(3U\@AF[X%+1XB=]W/R6\]_70E:X(J^[39='*?:LQ@\VFAVM63-4#% M3Z)%/S.?.H4>.A'IY%L6IO5.\8^V#84TRFQ![+>=B-@O?VR#JQ,',[O>(Q*] MTL*D5"M@6B,C'?5+$*[8PL*+1*5J5PJW(4<-9U$A]8(@YN1E=53:*==436?6 MU9;M0V[L1",ZP?3%<[!$:W4@*1OD("W3P+-FZ?BA5&=+X?+4R. LZJQ6#,2< MNJS*ROKD&JOIR[K&WB:VC_>"^[,9=J*D!&8TZ[H)5A(-KM(DY9)9$R@T2]6] M6B-#N@%,A$K2)#7YD)TE)@/R66,Z4/-3J(++O-VUDFI]45D3B!H$C?VB@RW: M,7)8&Z06,)&;TSJ8C5TMAX%@SV@%0\S(D]HTLHZ%%2[O$)2*=]U_,$=3%-;< M$SK$KZIZ>XG*UVJ;,K)B6QNLF;*^=PO48RZLD7) !Y(2*@>Q.!_J28T8$9N= M'I7&X=-%WK]UFVJ,P\U$E\P!Q=>4'WM?+2 M73S./YD@7&T.?LLT>PRL)0Y:C HM$F5NQQ00Q\ ]2Z5#JE 8U;! M51US#==U"$K%NZ^(NHH56_IM8QKGOUE9G7FAF[A,@7LO3 42"5"*@GEBM/76 M.Y@GM!9[*L=[AWS@\OS=$"T5"WN#0VSVA$:&L&FZ2[6&M,+,G&F?Q4/L.HV, M#VHV]^+0"W 8=AWFU2?'JV3[E1YJLYRKH* 0QG^D6#YQC>$UQ!;@;6YA)0(C MU0G.;63R[L4^5MZM?=^7SU^9UUO\^\9MW/V]512EP1G)ERR: $(Q^VPD.K1S MONRFJ?!BLTU K9I[!T!Z:X5%9 "Y2; M&7JZ2Z9';ACI'-GK'M1$V>;0-M90>J10FV'5P18SK')8*Z0F&,B=8=FW#2GY M;Q RJ5H!$#TYT@RJK$/A5^8[ J6ZN8LG9)6R:H#-FB8!L$^)?+76@$BI :"N M&OX3(XIR:^]>9V*UE78"2DWY=2F[RV\D:JH&2-D@ [!/B3*P6 8FI0I(@$\C M"V),659M]SOD:JON")3J/K ]830K76?+P#9'$Y1@4&A[X.=&J%2I3<$UM.;! M;9YX*),7J4QO[CB$HGNN^.7=@IH DP6AT133)9^PJMR_#F:;")'"@"!)D1S2 M0JG( J#<>G$04])R5K*LRR3KHN@*E!+O+N/;;3G<,96:(N6@V^U;!VJ73N:# MBS.-2O4V =VC4P9JU50QD!6I1&O><%%WGY@PNF[!3X#P$\/S@81A;_T9NW,O MF(^QGURGL_!6AE/#O!/-I#'IQ ;7),A(YU(I7$J[!@[8+*H@5F).?]GD*A^5 M3SO-:*#F7')5U3:^I*DP,X!,.:B%!$2D=)H8P>H)!3!=3(1%JA&;G1>:[KGR MEW0+:@)L=L6_>]$BN4H TQX*O7 T>Z*>P^:P/ ]5H=$N,V/4""875+FI2LV, M.0%@"E64,:G-C4+FRF#0-']E.)CUXIA'] ]"-SC*$E9J@)1%,H"VL.=1O]$L MAX%T+I3"I;1HX"QJNT8$Q)RVK"KO]\C55M.3=3W=;EC92UIU^5457#&WN@_7 M&DE)7C"+@"ZOJH;+YUAE9G*NL0U 63GJ<,!R2"(P>NO$'O51*/-.:K1, M&5NI)3"F[-!3%I#4;%W.''EKBU.PC@J00QF4G985$.#3L_+ H*9J&CN_PZ$W M#U3A:#U0/I>Q!P2#*EV:1@FFI S -"F1"3&F+JOZ\DXS.19)9Z#4^8$$\TA? MFZ(#V50J24$@T".OP]("*6@"H,):21!#NG)55I(.1865HB-0JKMY/VZ,(IG: MJCZG;-C_;)L&J:JJ 21T %!1)=>) 2U9U2QVQ-52UH'UP.PM]_@Q72'F<7"K M19J14X-LLTXRD/8NFEK%U%F@$'?G%(N@8A$A1?"H8KMM',FXG=4DFT9LI#[U M^9S:_AA)%,BX;U"+,M\M1K/,G1&2Z:"%R5^X5X2Q$J+.7(#1#=PAX8\:;?XR M93^%R!%E--+SZS5;;P+055M;G"YZL9)#69&=-=*A^+2I/ 2 [2,(B>^YR>NN M$5[*HCQZH%WA@A3('B6JL@PMF)(:$#N"5@[$F+I"686DT[2,0M$9J#5_^Z)D M-XX6X@T6986>"BA7L[8/!(,J34F>&DQ)&0!U+I$),:9NO_RNV.FN\D[6&2AU MEK\+VG]S_-C%[CWC'+\>*X[2UX*++XOVUO(.9-GJYD?:V!%-C@1'2$I'Q11< MRRX@;DD;6D,JLRR7!F\.0V'DE6(&:CT9<+8@O[M:^5Y2:YP\FU!\3$&8IZHK MZ0[K9+L)U>OD-+BFV)X/ZZ8VYP L% ?J##D:]_+F01VD$O.A+C*@EH-;%"[X MRX#L'UZ8\()\Q4TYY8 ;5TD#:*?^+(RHYT38E6,F_ZO\]K\C=)6Y#+]^5S:= MSG(]($?E5,XY50Z^N7B__J"@IN7FVEI9R9KDTZ8\*_?))M[R>C/=7<" KD26 M7V_<8,-P08-++\7H9<;J4%T\>D(Z0BB]-^@9U#SX2O;1>1'&25? M-FGO[!>+2,N3]K)O><0!J*F,N42/?"Y!OVLN M?C]$44SY+4+;/TLOI:K<<%L\9-[0/D=2W!2U4J604IH+D%:KIBH+D52A.U]0 M93I64F:E&0/4#/H2Q&&,_!$=!#.:O$S$\U&2*6/0XH_K @<-VP B7#I5C-I4 M)7[7JL842B9 -9&0"B@5=/18\W9_8AF1T)F2CC'JMF/"Q528PO;H;'QSCRJ"A/TT0@]NKCY<774N=A=FL)]O1\.[_G#2O^,_348/@[ONE/TRF;)_'OO# MZ:0SNF>_C6[_[^?1PUU_//G?G?[?O@RFO[.^EWX0YDC:RNNX\XQ"_&ZK M<^T^PC'E1R04DZH(=&D)QT1ZO J$!(KTIV&;+07'C2DL6$OJQ,_X8COGLG-! MMD3(!9!=&$I(*:P-+6B(,>N/)X09;A( ML^)RD*:X+[AQL4Q'T;->JT19EN=1M\MIANZ2!&)ST;); @>!YS)%R;):@K9= M?G==UTN&?D*>.PANTOE59?:@I*W-R[,J-F>Z,:NQN:FBU0E(!MRJ1O]23B IW MN^S?72/,VA+3574X.VZ+LR!-SH%X<$$7.\^KX M_>U=F-P\N/ON$^;2_?8NHG'[#@>;JA0S7^P.)_\.@GT?B ,+W;(]^8J8,FK\V&7+PQ.A@NE11+WG..+Z.R5#$G!E M9:QD6,P'_# U#B/EA#U.YQ LQ)JS(+\6'(<=@-0G8Q>+8R?A( QCK%H#E- 0 MYOH1!*RD#Y#$!'8)7G%1'>5)*C-LYJ]05C>#YH6!EI1S@7X>B&8(;Z-!&9A_PU3QPN5 MZWV-?B"X40VO#0K*X$C*("V(^BK@99^XY4 OA)TW7_$822RAN*1*^Q. MR12]\>=(^$Q@]##]3\X:(Y%O7*YP$(HSA. VER"R84Z+(Y0EZGHOKW!BS:1-Z M$9Y@^N(Y.*%]C!TR3^0J^%EN>#0T;*N*]E,;UDE#C *DC$,<)5G(!_7"4X!I M5L_%3R M_1B3L^Q6:W[QJZ2RM/#-?@6IDGU\VA2P;6"-,V&CM*YD[ZOE E"IT',\;+!J MI.R=6<:/9;Q4\K'PW:;UKQ#ZAI$%3"VP$KWI69G_;C-!6\;*/*;'8Z7A M!#-"ERC=+J453&7 [52Q96$^PB"G9]M-C:S'5Q2/EH#9G@+FP]#0 MM@<_>R$3NGA]-W!O8\H+&0?LBQ-QD!?/O?Y8U4[\<)"=N$.H@P*WDZ+427#J MD%E'8'5Q_;%E(_*(%S#H#CGIF[0\>8]ZM8I(ZU$) M*&[\B1"7VY_+D_>*/V.? MUSM\"56FJ&%;")6#=:1G2)XUWVV,'?XXF./PI_-XUIF2@/WH)!=*5'/*;JZN MBT[9N'_;'TX[W=O;T9?A=##\U'D:CX;LY]OT#@GX[M40OZK8,Z*W"QZZ&@19 M""]PO)6/=?[7@7W:R^LS?=7@KG'9*O8!QXD[BO@567@33MA=V=-G!-T$ >W1 M63DH$"^OE@KG+NV24F?]1'I*PR1"@8NH&WY9\2N!&.3UU779:723MA!\29T. M%DZDFY!DNRREWG)2YGX>H5][_NG1F)(O@SEHX3[!+(B&*.7<$--*?:3SD!XA MN,F-:-9!7 'DMM6F@Z%[QWX^MM)LNX7@JL/2G"UK+#J*+SB(R?3_0FXB(P:-)]3/$^?:TQYI?, ]4W:OP.$ M+/'N.@R2/!Y7>MFVH@4^%:\L01VE]J+H$RZ05! .O7)NV!2,F M)-F=&HHI7A8J+V]F+Q)N2E)VANA7.C"56D]L!1=E$%,2(3]%4AQRY)?C)*__ MB4JDOR\\9Y'(4H\T:>^%5:X8BF"!=%V\0 $,+75=2A"1X<+UBM4(H' M]$QH-W#3"U;Z;_S(.>Z_I1=GBI.S93?-'-(1A$AS92'7I+5Q879]/]U21K-[ MY'B^.%7$0P3AE-QY%#N1^&6GABFITAVU?F<0:L4J"_4 >AL7;#H26U46.#FI MU V[07>>[!A[HM."0[CIJ[)PM!1!RNB1(&1;MGC(?*,FA.XLN.2*>#17IN[, MVT.XBJF.M52!1&NYMDF\6B5[,/+O&3*!XR%_&Y6]0Q'BUTBL^"]L&WC@MTSP MZR4&;)LG+\G>S6QU9@#&/J*[;JLEZOZRGZB;?'EZ>A"%F]V'SOU@V!W>#MA/ MVR?!.G?=:9?!;;$3A^NV^'6R"/Z?#D.1P:989@>"G_";. OLQCY;$)XH66$: MK?DUKUP86]*U;XP9-V_[1245.KTUK\+2A(2,6L))#%858.YA)A-2+;^,I22* M#:J-'AFU!!)&JJ"M1O++DFA7?O*EJY&O/TX(DOR[/DXG#)[^ELHYBCV=PAKPN7&;2'X\G5FCCF%0"V% MLBBZ24-[<71SLG)WL!I;A2=8':XD278NPN^5M3_]+?@%2W.]#;HU;:]6D&I =*TL7>8D[@ M'5Y1['B;^YH,5*:5D4%O]?76DF.RY_05T88*@E0^15JB5>7[$ZG=C'FP5G2O MRL 0\BGM*F 5[@!.Q6SN9ZF:7?FA;G9E,^!)Y4DV2)NE10K0K3]NDHJW%X=, M\<-PDOAQNOLM2MI S'Q(12)]W5I.D^47:!)N7DD">CB6!> M/\!TOE8'[/+?(604I/+?AM_R^#9>(-,/YDR2F#_;P^L+8E^2I&'H\V; M00BQE#';@ P8-\B5134E#N MD3Q>6=4)^;&N$Y)@>N%S5#L[7#L)LMQ+X?AV4H1%'5@&Y4X6YY/R8S02,G-M MRCMH/[N@0JBW?D3_(/361Z'.]ZG4 T1/R%2HA8R".='6\T(#M%27QE6 MN1<@[E8-_3:4LYQLRT_L<5Z,Z!,E;E+CW$/.-Y_,M34Q98T@;/,UE3CWK%X) MF9:OVJ3(Q9P ??W2/A@$L_<(TMDGS/)-C81?AK+"$>[.*3:H+-,U@) Y/X*, M="1:/@N,7[!/5MB=8F<1$#:KUR+?H!=9:2L(.>DCR*V43LO'EN(P(DM,Q8%& MAD*X\%8E]R?I6D#(Y1Y!:%H:P5J491$VLZ;V@FY52)/'X X?GP.$Y<'@.')X#AT"?7^^K/W[N*P=\ WC%2]K;_R&\1.^]_ZF&BL;O_?^G'PY)U]J2/Q+B&>Q M_^#-5/%#LZ; /<&:X?DLA8 #\A(;NV+8_?JJ;MA].W9G-_@YK'X.JY_#ZN>P M^CFL?@XO-1Q8!QY>.EO:9TM[2U12/"U.QU\[6?L[L%P,AU_X8;W MY 2LZQV'M"\8%Z%:WUDWX^_$-_;";QK#6-\$CB6L$$!^Y]218MOFV>"V>6"A M]-IQ?1,@EJN)QLEE)"/*]G/2$:8XC,8HPI-7M-*:HRI@"%:HB;+EGX^6TP)E MRF3VHD^,A <2,K?H,W;G7C#/)O0J+G,FG<')P-5< $V(M"MG"5K:=5$##WA1 M--?ZW%-+BLYYJ MQ.5KVNEZT#L:AB3!.[D#I%1017 (_G!EN16) '3^)^OWO@D_?6L'E(Y&S[Z7/%X7\J=62.A5O\3G1UD,HC?MC'H/@T_=Z6 TG+ _ M9;H_B0C$<[0S)_11" EDVX_0D&#.5&K)<>'.A\8TEX-"BCPH&9][;$9*AN6G M@ HX:>UJ%3 0HUJG43HYP+"7V2:(PR>TYMHS)3T4?"NK?U?"0[";]8J5KW)7 M$@)'(J-H@6GZL[E&=?4!(H1NC'41&!"3^EY9? MJ,&!["%J?5++X6AU$ZKW%2EVO6A[!.CFZOJCYEU%-3"$;:%,7W:/**KI:(+' M4[88=GV" C5G]T!L\M-,,;;81^ML7M'T2L?[X$-=X\#/>PA[7KE854%M,W0JI8 ]5YW MRB'6+!VWB-*U%\Q+PJRZ)O F4 4Y%HD!%7*=8KEAL]^/5!Y- MMQBCLQOD'.X^A[O/X>YSN/L<[O[3A+O/H51(_#^'4L^AU',H];L/I1Z\:HSQ M"_%?^"."63=!'G U;',:\59#8BS;FSAB5L%HEN"F%8H<%,)"8Z1B.8M32LHY MY6 6/ *6S6:8K9XLQ$8TB0[6?HG9AA-7K!-. W5Z1GRH.Y.%](9G3[91"X^(V? M."R=30?V"2%=9";A PD]7V4:5$L9G>\L/=]9:GEW/M]9^OW<65K"RNTEAQ,' M!VP_((J%4P%G81%57,EML(@J:+# ]'3\+T&XPHXW\Y@_+?.72F !++9:]=GR M74V"/=[?$XH=%,J#9#I VPMSJ?(4V5XD %+:Z>%243J8LD+6Z2#*)R2"/D/F+G2:,X=+[X:QS@FQ_9"%?RK$,3XYQ(A66#'#@A!9G@520X>O-#\UJR-QB$=WK:5Y4] M-IR0OOP5!3&BZVLVQG7#2TINI%8UY4D('^-_74+^I$9IE7U^!F*>F08<$+:,7(BPM@IUKUNX$X7F&(TBU2U M,RT,VZKV?(2B/1J&G) V<=/\PU4;B\UNG'8C@%=0%";+@A/2D*U%WH::[ W6 MKJ[4#UDVS8<34I@[[+2F+\6QVE67^A'2AMEP0MKRR'B\^,!WT9MF524W4+MZ M4C\(VR0/3DA)MEOG38L6KW+0=I4'5!17R@];BI36T8C[;F\7B,XQ_[0EJ()V ME/;4KLB;B<:6$FE)CJGBW:*5QW2R_[;"@>M%,<7%I';-/MJ572/Q41UYC4LM MU9L'[Y^QQT9=L^4 APOBNWU$@U$Y\ M3O$<1;B P5U,D^<0/#Q+7BF3BJEZ)^W*Z\"880WZ;&UJFQ^RV&P.BG5?D.?S M*IC[.' KK(Z5.FU7L,V$\ZK0"TG0Q]@**W?<;E%1,^&XJC2W+/0>"KUPLF(6 MLSL*LL=&-L\TJ)?FFAVU*]2CQLV,:0141&9(03$:5KUYNW(]=@F@CC*PTLP] MIL?KM5VF@ [[P#PG(WGJ.VA7HL>X^="<-D R?9"4,=Z2Y=*+1&TJQJ5"K=1# MNU(]PEV*58BS93(]Q=19H! _D@"O^6G)9Z9O 0[#;N"FV[SW+^P^\,>7,ST"FE;U#@X8$Y6\UTRS0)WB(,*%GQ#8J9H4$ M,X?B%?F5YVJF%81#A$>;I!FZ@$M.HG,<;R]0/RY= MO1L(I_Z:FZ,90AN/(2M7#;+B#,0X*;_,TF!= /(O$637^Y\LD:XQY; MVV=>].2CH.(C.#_O!^1N1X^/@^EC?SB==+K#N\[7[GC0[3WT.X/AM#_N3Z8= M]FDP'8B@W0:#3HI"1^!P G&[.RXA[-XR/X1ZSS$7%4==_UB.KDGK,S?RJ'"> M. [\CGO-#<(J8#@Q/A-QY">MG"+;RVD1*^WEPFIP(%<,ZY5,+X\F'ZOX&UNN MQ752MRA,65]"B^T""RERF<1>Z;UFYAW8O.JL*IF%)R8UN\\)1C!5*ID6YP8!6RVR M'\,G3#>F7%I^4$T=JO4,87HWHC'5V-!"<8<4RQ01^H@B9\'O%,M\GV#ZXCE8 M5R5Y:)\0@J/UI'\D!D"4>W?.?-^-ABKJ> [N%$(XM5W)%SD */93@YITY1K- MQ,=J.T25?B&$9AO9'ZHPX;M0E:/K"(RHL"WE@*@5F>!CSN+IK3<$Z97 I#V$ MT/)19&Y"+#P1[SM&;[P"/0Y%)CCTF)OTX(45)[NR$QA7I#7B3RHHMI9FF"1. M:S=P/V$RIVBU\)Q<>:_(.*2N[03YN&)ZX>/533&],.E_XKD%D5KXU!]]&G>? M/@]NNP^=P?!^-'[L3@>C(0/+#MP1(Y] 4F'B++ ;^\SD2QD[QBM">1XPP]+> M.OVHRS74ZJF%*D*FTB'Q/3=1#J[_BDIB%2"]$E)LOZRGG.1E M(7"SIO:"WU5(R[V75V<%/,%H^!B_X"#&]XQIPB1#3O1W+UK59PK2YT,X&V?\*LB#0T99X_OB.GQ[\OCV]A;O3CT^.4*FZFLJ90M:6-A MEU<9](?M\H;T@G#9M36T!1@@A;-&JI=_NCY'1A-%(?T T_E:79*9_PZA^%4J M_VTU1A[?9C@V9\+#-,G%AK&?V .BED=N IDW Q044/+7@ Q N5+D@#G00LBWQ9J5%<5.PH9NX':7?#+\2_RJ+%#1M( PL8\F6RVE@&2X.>@Z M"!RF<^)"X9#[_F03E1DJ3RB;-850@WXTJ9J1#$J\'-$'$H:;5<8+8H;G+BG2 MPVSKP@D<6V P+YFBB/'3"Q!=BYV,$348$VP+GV M%(#?I%$YQ_Z7NCGVM&(T&?4$4NMYO1C-$L1S^I'5#%UNO5Y7Y^1ZE>3Z(>(Z M9]?/V?5S=OV<73]GU\_9]7-V'71V_=!M_IQ>/Z?7S^GU8>D\(4\A[\Q'0;*POT@TQ<"-N#!2E M[^X*I4LSN55C;S_4C+WEA^>'7%($3B ,IV"=]CI8;9/6/=?]3+UX G(T>Z*> MP_5=;9:;-H83AC,15][#-:/0=OBA#$NMK6[>'(@97TUIJ\D31FAORCC"UNM' MML=3#_GA!F]M!*.L$03?H:JJ9H571E\3OL87QJ<>O]A=*P$]* 0KI@[?]50! MYS#DK M11^03?)]I+E4MV!7=*//Z:QS.NN52IM9?$;)D*3T_TV'B:A$SK1Y\9U=%,AKXBPO)F;>Q%WZKFD;_J68:/3=PAX]\ OGS M/6[I,NU+HZ]FVP?SD'M[RJH/26K*0ZV&$T9,'YDB_ B[//5 MB3>8X%4DUOX/5VIGM%X_MNU&\VAC/?I:D-B0[:Q'$)A9-Z<3=Z]%GIT)=CUR M(L+&O[H^9'KM]W(ZH?PZU%F96C5$9=*)S6L@CCRMVA'44XR??7++'?KUQ%D0 MXC-[.:*>KCJGO(W-&QFJYK[*:&F"ZP\D[ 9S+-YR6B$:+<5U^'_GU5C,&WHB MKYBJV5^ALJR;=3>.%L)T%[''T6R(7W\G]!O#[B!I MMC5RJZKP4S-3\K@/%_5=+^1AO%15 M#Q6T0=>M2OIC\Y(V(+F18C6VS(QF??_;)TI>L*9@30K7KE]^=5#5FI0 Z\Q1,PAJ;1/%9K!J5$]:+,J4 5YQ]JB6FW;VFL&=^^2:J9>@$7B+%<8\V?( MTS*'(=8?3E/ @MRQ%*J7JSB6DP/ZUG^M? S;0I"75NTJ5."862@E)@,R3\V&:\V&:\V&:YAS1\V&:5E=N MQ<,)9J64&E*:7K'/9VKVA-'FF9HP6M&$__RG#._9;W_<=HMB@Y=:1K8.^\43D9^@3'R9XQVB/EB>U= M[ ]HCJ]-)9AK L&H.5":.7JL'0S*O&OU%?EQ\E2>[Y-7Q-"M= ;H^NKJNG@& M:#"\'3WV.]/N?_?+[K3/DKHUA\32 6[+>#BY0F: (2N M 9SC0"7"D#[O)2'(]D,/,LRTT0=]$R#!B'*=*YP115Y_#+V\'(=YAHH"YS:N<+-O/Y+W^E3\>LK[S7CRNL:,90[#\^12# M=A!,C:KR,B#+KKSVE_$RBU[;PIY);T!(5C#*[>L$C7J9O3C#E(JS[N+Z^-L% M"N;,Q.PN>QF1@"Z%*Z(J\104LC5J">'ZVHKB-*(+@D_7 M?T.;=[2J/4K*O+F]1TD+WERV[Q-PXS*O_6[QUCER&G@0[L+)NW*E CD[55IM/S:!'I[PFR/=34K80$& MSJ&42HM?@0H@;-0UC[6+H_(X1O;FZ_DG_BLH^'(052*$L M!887,8?"\I\-6?XSI%A1)9;_#(WE'PU9_M$*RQ7>8R66?X3!CAFO;%^;9T\S?*HA5WAS"^G846,$\ M9*O(9('8[ZNP&T2>Z_EQY+W@"79BAI>'*\9PKJ]NBC&BU MR'==/.C8@[2\1AR(=&\M[T#C>S4Z(IPP5C/*EWN*MTE&VK5"Y)B5!M#*FP%Q M-UN8=>6: B<2-XF(\XU3S)@H2'[RD3Y!KVT!P<,UU>#\P2@-41 GI+'"EGD0 MQ^O>GK-Q;!;E-./(F\D).C,'$JZM-3A2WQ#B#%>HF$E,@%B0><1T]O.8>?R]8J.2B<7+3I0B6G Y88M$N4"AC(^J13*9T<8*Q,0Q+A M\ FMN?9,20\%W^0W%QC 0UBA](J5JYI1$V*[;O5PM."CZLYHBETOZLXI%L$,90E!&3"$-:=, M7W;W1ZOI:(G'=S&_KJ6?^M"WA,U,%$1C['MXEM1"5)*">7;$;0#I>B,9G6[QXD_@N_54F0<(\"XZ8%HUF"6Y:HQ81BJ6\UVDI#2QV-UA'ZVQ>T?1ZY39\0\$ M!=H98-K(YKMG%9!S3 (?U6J]$!@C$ M'U&ICXKO, (E/10*;+1+?A$(PF*O5IDLPXN8V[[9U8G9>CEZP33PYHLH.<'$ M-BR.XH3,Z/;+@!ES;Y-7M"J5S8%]0L@>FXGR0$+;OR%RS,_0*Z[HS'R#Y10-P21Z6S8>\K@'LU]^2?XZ$]O7QD_%C&2R4?"]]MWZ@I$?J&D05,+; 2 MO>E9F?]N^Y9-'2OSF(+**S^4U/&IP>W5Y961H,OOVZJ64[UYR7#?^,A;CRU1 MEQZAE+QRCQNMV)=H/5U0$L\7=VSC_?O"#D<8P=[+]CMK;ONDHDJ%)=3ON#NG'V])_3>"QWD_RU&E$>[ I>-^>'ZD0ED MP1#^4%",TT$;@OEEHJJGP]'C756D#.5D\R*;@&LX)1'R'S"S0=&<6[(>Z3H. M#MG?V;], R%>XPB9L)^9C8J0WPT$\NQ//!SY"$@G$LU5K.C4]^R2C"?TPLG M*XJ1.PJROLV +=T4AU$2EB\7O'%'-J. !XK7F$905Y 94:"Z3-J\>:MR-7,* MM8:,.65@I;E1.Q%4X%N5N[L:VTB>^@Y:E>B/QY:HGC9 ,I59*LS66'KBB?%[ MC$N%6JF'5J7ZT^%2K41&UL[+UYNXT9'*!$FTDYGL7+3X MTS\LN9())!*YX&25(V;:*A(X&\_YX6 [^+?__;+WT1..8A(&__[5^V_>?85P MX(8>";;__E4:OW5BEY"O_O?_^A__S[_]OV_?_O?9W37R0C?=XR!!;H2=!'OH MF20[]! >#DZ /N(H(KZ/SB+B;3%"[]]]0XE^\QUZ^S:C<>;$M$\8($[LPS?O MBV_.,WIA\ -Z__[;[[[]\.[#!_K7#^___,.?_Q7=?BQ:?J0";DA[4Y\$O_W M_N>1,D54U2#^X24F__[5+DD./WS[[?/S\S?/WWT31EM*X-W[;__[X_6]N\-[ MYRT)XL0)7/P5HNU_B/F'UZ'K)-Q.E>XOCY&?$_CNVX*7M 7[U]N\V5OVT=OW M']Y^]_Z;E]C[*A.1?:W!)&_.OO62HD.U\9^_%5\634](9^J___[[[[_EWWY% M#8?0OT6AC^_P!O'/?DA>#_C?OXK)_N SMORS780WS5+Z4?0MZ_]M@!.FXO=, MQ??_PE3\_^A'U\XC]K]"K,6GNRNIHM\7-+(.7 4MNWP[J Y;YI6G>O"/N^I2 M[=19'^'.K/,U_:NF%GY)<.!A+U>,L5.0YM*4OS:C';HU@CYS]C Z-52<@/ K[29Q_4KI6]L'?[A,:3&PD>G >RY#.=)8V NID:J68IS6W M .AN+8*:^EQ!#OW*"5IV.@K!^(K^&;=I7VTX%^<[4:[1 8M6*/O@;J:S)%\L&T^AU OY**:.I-.3'$J$WH1/^5 M.E&"(__U#A_"J"D]D[><@6M)U#OVLJ-FP!U.)FUOWRL((T%Y2C"+G" F;%[= MZH@-36?@B3(%3P#OJ!UP7Y2*VQ\("\K3>^,MCDCHK0+O@H[Q"NV/V\W #QM5 M.W;"6B/@'M@L:V_W$V01I8L8X0F<;Q4D)'F])#Z^2?>/.&K0N:$)8)>3*91[ MV_'W0!U-*J:ICPF"B%%$@N1DWG6'MX0MU@3)C;-O0C9),_!>UJQ8W=/J;4![ MFT34GAY74D6,[&1>=Q6X842'<+YOPN?-YV$:)-'K>>C)G;"M%WB?U%*[[J+* M+J ]5D_RG@Y<8[) G T*(Y2Q0HS79%[]X+Q<>315(!LB=@1;AFUY>_">W*)J MW8F8&:I>HTN6S>;@D W2#N6.C#3+.!GQJ5WQ-HP3Q_\_ MY*"<-DD:S\4A&Y5L],E:RSFX9;/ 0WFFH(XH^6FG09D ?"ZVCFZC\(D$;JM[ MGC:?BX-*%&UTT:.V/'Z-O^\>P2=7C[P$[5Z,JN6?5O@3J5LTR&ON4H(8$ MN0G1:O7B[JC(6+*;+&D&V+%4BATC5[4-4#=3BFI\\CDCBG*JT^XFGZ=1A(-$ M' IC,41G%.GQ^7N-YH"]4$?1^H2SN2U0K]02N>>$,Z.."O)(T)_PT$."V:TH M\H0OG,3)Y)%:0]H=UK->2#.9($$&U3A,\5NKI@A79+8=?R_8B>2W]-3- 7LN&T*%CN^ MDG9 G;157..=X&RI1U!&C/24]_;R*X."O;@W>$D_:YK=J-H"]LA6%8\OD)XT M!.J3[?+VODB:>65VGY03G]PI64CHN62UY6P<\D2]9G([[&(JR*./;W#2?)91LPOP*-=1N#80 M*]H#CFDML8V'Y8PX*JDO$*6_D)UNG&ATGD3GJ*)S@/G\S?']\)F](X,V882\ M,'U,-JF/G+P+;?)/__KG?^%1_T_O%^_?_YE!WCWU5,QNGZ'OWBT0?]J&-;B@ M],6G[_FG]'^IM0Z8GR'U^Z^J&64'8*#S^:,7,3C1/ M:0(LF,3+XVNO2_:L-,'80 MHN@V"@\X2EYOJ2()A1&V*G=@FZ;T;[%GBJ\Q%?F.;'?)>O.)8@T3=KFA"$7G MZ^D^]=E#G!?X0!,!PNORTI[+/;LP_#O_IQ3 )F ,/-ZG,WY][!^;*V!DFE!Y M\V%7B+A 7,@%'W8+.?F_,DD1%Q5Q6=^&F[=4VGQ>[S"!445B5!69$ZD*;2N) M ?]CU.WN,VEVH>\ALC]$X1,_7A+S14H[H](,+"B&.FQJQTE&P1_#T'LFOLS* ME:^!CRC'BE1Q/_\.,#J?B&CJ=#FA4:+RD#^7I8K,P55A^QF83< V2 @PHF[W MB1,EDVOWB+I^].?E5D% %R*,O](IO<+)Z MV&H7RUH!#44-HXRO@ M&6DD:/,'"2LCJ)VPG$)?(O1-G!=L<8 4BBDWY^!'8%V)TYU=P)%U)&"_O5R; M5XL&J-V]W!EXO"06VQ:@OR3;R4A>6ZXH M=N@.'!FZ&J**';I] :-+9Q5,/;["J-A735YM7\NM2*5W-U?983ZNKG%+5]YZ M'NX\]$W6"FDXEW9'U#=7T2]9V+F^F]].NG5>V6EGO0M\)XV!QZ9:R:9+>_66 M@&.R1>#>E]8RND NZ(VEY4'0M16!48J]4["1VT+:'GX[A])P _(L;N%)-A2 M7>E?,?'X#G48Y*9X56-4+X+ 0:R_L:HH9TX-, P.H)1I8.6L484W!/K9'%2KMVZ%N@)5W-4;5 M^)KFX3\4^Q#AHT^V/"&VM,4_R:_+;Z^I=+5PO4,3HEH[ 08XL&IAIS7D;*Z"MM^AU^@''-6T5==8#IT%LNG+/L:BJ.V49'SM)T6-^T&&BWPG;(G(?[/4EX MW5_V(&2^0.G*0TC= WA(::A;/YDL;0XXY'2D-E_"+FB+)TZKU&T=/9Y.75>E M[B0!V[DXQYS+<70KP#'+DALC%MFHDOY37F)CF201>4P3MOB-DA#=.B!*%TQF M!LR)VZE=,46]=8XQE7TUAH^D_OOGGW'AV<"#T)G=^_6[Q[]P[%.XI#=(Q-DUT8 MD=^QMZ 3R_Q3PNTBWCU+DSBA?]!!V%J^' :M\=O0#'CPRA0[3H>K;0"'K534 M/IE@&( *V+%TE(7J/TM"]7^B]]\M/GS_KSQ WW]8_.7=/ZLC=V9O@B\]C[#5 M9\>_=8AW%9P[!T+G[A7S2WX@K8[ <4%?^5HME-9>@+&C@_#&%4,*%HCQ0"1 M&1=VD*Y$&DN54B8U 'O<]"TU@"NXV*IIE#_"Q5>UJ:J'".]P$%/8$55]K\.8 M%?1=;QZ<%YG=.E.!'OQF9CFJBM2%!&18,-2D1U6AXM7 [+G?*D?D4V96@N4. M)PX)L+=R(O9,5%Q[P6Y#7");BM+J"#PD])6O1D%[+\".WT%X4U_/6:"W5.OB!*U=.O88,.# 5PDZP9FQG"W8$G<5.;-RP M3&S[%$-C$>[VO6E9-^ 1JJMXEZ+K@*-76_1ABZQ;/SDQCK(GQRFXRF"".J_< M>X==3)X8D-)Y@EZ1>V.-*!#AXE):AC2A0!D,#'2PSAD:M&1\T.-8&.WL/>T9ID+DM3W\V]2MJVV MWMSSC3DZ@^-;AC07XVN9%R1V_3!.Z5V]6C\;8#O'+(=Z@EPYXD@4/#$ :37++YG%8*!U%K MF,L[\ULCA& \>ZN#%>T[+@WJ]9P/P'19%-3H-@^X&&T-K(X* -<")S0"Y%7 MBADTEP#5/>83[SJ+?XKF\XCOP=>_ZG$-9,UO H7!KO:=Z*YNH%^OI8$9";Q5XG:)U(&W/')^=$HI5(3F@EC1AB)35NF>O M9W?<'=9O02[2GNCSP"\D MV9VG-/CV.%J]N'[*0FX9QYC^GR>OLF%&"7@$]#!/O/-N8W\3E/ MQ'X>E'-%SY0MRODN4,$9Y:P1Y6VK.L'T1BKL$@GFMBJ@67002XE]G*PWF02M MNZ[-;8$#H5+%>@[?T! PF*GE-8_$.&$[F3ELV=^I'$/+"Q)AESV:&2;^Z_TJ]%_1@/'^@G1#RVR;9XG3U[4.9W_L'7=HH!,TL) MO:@]2^H-]JRWFD'\-JAU'+F5)L!CMDG2OM%ZCZ,GXK+Y=>;9G+R]B!U2QWO' M=Z*\_L*SLS6KD__L>P&/F7???_>.QPW[)(.7^_0Q1X PRFU9'H%@NK"&QR]8 MF%$ &F\]S,%BT:"[Y3CU0C=E\V>.V?U_V?Y^7F6$8L$I&Z)XO5M^BLBKCEQ$ MO)3DG0Y029A38/>* P^S5H^OE!"B*K,:3%X:L?D&)4H;\.?0Z+_$*O\WHP!' M$R[:L'.!F35[YQQK![:XJ3G7::$4C/O)/,_^9$4G780+MDJ5I),2X(G-J9P# M34+L5)@:5B513LIKF7?8?6MW]7+ 0=QZ_%K5'GB\M:K:^*;N<6/ <=@NLZD# MEV_HYJ2MKPV,I^R/.*"D?3&U]_8D((PP>S( X8R7T21?,@OA$R4ZJ-^)["U3 MIUAMY)N59U0PCY6(IE])4U930D##MK]QBJF)$17H,Y1^2AD/973*X&RW$=Y2 MIFSE*PWX:,TCPR,)O^' RA;%)S-W] 87.QULYI$]P\QZ)]C=!<3-@BZ@ V/Q M00.=8N;#ZOR'0<#>\Z!T^+9*OH9WB$(O=?FT)@K_3EO$7W,*!^>5FM='B?/" M5DP>PR"-,^)X?_##5XS1(P6 #NE.\,JF23%CZB]0J8\H!OF6 MVUN<->*\496YAE4*U)+GR/>2\N$E,XU0X M)[9 E)REW'=(A2X=MUKD>"/^6:PFVGD[@)V2:TMZ6QL#CRZUDK5W!!I; HZX M%H&-AU!&-DNR[.408RO)!M>&3-)*(%Y4]KII/K"L['1+K*+N 3PD-=2MQJ6B M.>#@U)':^&Q%A?8"T7_YN#@F465$!\\P$',T>P$\E2%.#HG8R4[91LX]]BG- M;;;$Q92N+7!EB;XL[>A$ 7BH&YBCEOKJ=P<,!29:&"?.?",Q8[9 U576.L-\ M\I5-;AMG/L[+(.KYG8:=VV[^#8C;KR M@<\VR]1:SB7R3M5KC+VRV1RBKT':_O$GB*(WC.Q(=YJU@W! !6MJB=LOH6 3 M!G9"CTXWPKJB&>:TG'?0Z0<\++55KP9I:R? (:LONZE_5SD4,9PQ^=KZT8CQ M]1>Y/,D4S\942UM8J@Z M <Z.0IC#P2 M.-'K58+W,;45O\01\MV"/&60IBUC<@2.$1.8^[2NTRCL ./4%%H/N")8"HA* M"=$C%S$'PP=Q%+0F)N)R\@E815*4BVIK4@+7]O=XRVX2L)/P[.CL&Y__!IFA MLT6A9#AU3-4]@_:0H> MLN42]_182KBXBO$FHVUINC>RIA7\0F\>Q]14HY+8!+H6.LI0>YI9+DY:M[*/ MVP"'FT:5:C/8:@/ T-(LI_%,%2?US6JT3)*(/*:)\^AC5G+DUHEHDF%IQVMP M7?.]+=_>QOS$2DU53/P0X1T%+/*4I7)4L/6&8F7[NV\:/8P?UCRJ,MW4# M#$1=I.]1>[OD40I M$3T#NZ4+X #7E=S4IW/ZY2.]K)HVYV%] M;CB9[MG 73S0:V<^>*SNF1,35],T>=N9A6Y-157 \H8S"M.ZO$,&)Z<,(QZ' M49)3@?10M@1VNH'4_&+Q2$V-X7-&\7@L\0C#)8R8'$K1/ < %)>_8++=L?'_ M"4?.%M^D^T<E0;@V#=6Q316VH;WAO;$L-D@YWT/7D]\RJHS!-'V\RB M@:0R$O/#TE9-IDW,[&QA[=(1>\=<76B:\NGV!(VDG$]2*2.MT!(R:W>0WWMQ\?"&R\_AM?>;B_RJ5&_V^J<,<_%TIM_$*+B>*2JKH5T;W9 UFFJV& MNH87X=XALOKBLK; W5:I8FV3H:DA8#=5RSN4>Z)?!6$[_BE.\GS$+,N2F.&H M"7!O;%*HZH35[P'[7J.8IBZ7WP00Y.PXVCF??/#T1NEM3>V NYQ4M:/3A_5& M@)U/+FN/@W5LZBE>2I/YX33+FN,J9R6VEIY'V*EGQ[]UB'<5G#L'DCB^,L[: M^@"/.2V5J_&G[ X%O7D-G7=DCIBY-^2 &4,+$>I+;7MQ*_KION4OTDFN_Z@ MCN4._:''=5=3U&).^L@W$0K,^OI)=&[0;_=#8H.:'6BVA6L.$.)W1R MB+W\&)@2"*2-@4>]6LEJB#>W!!S/+0*;.FY.%A7G%>V&[%1JVBI'%6$JSP46 M_[T*3I?I[T+?OPRC9R>2G2/N3@5XU!J:Y:BL51<2@./<5),>!9,X'_0FY_@U M>S2^RO1/*%MK_)4Q1AEG2P !V#Z6]K>.M:<2BS?(;]ESBF%03PDX%60#;$XP(5HJ!,EI-YRI054@\X(J&W"I1/50"Q MYYE#.[HCO7HG#'&?.%$R8U-,!^]7<9QB[R*-F.;<=C\[?HI7^X,?OF+,V]S2 M'V%'Y;VEPJKL:4!K#N!M:J(3K.Y*"#HT&^O3"XF18(L$7R08+Q!GO4 Y\VP? M)V>/&']+#]7;,55V@G)3'*GD]B#"=C3+I-X?8/[\-WHFR0[AW'"BX2$WW*'! M<#;A22@F-9S\W)4IM7E"E*Z9-$"JC=3\8$I;HS& 2C!7(]5(+P(;0M7XYAH2 MK "ES%8O.'))++W4;T)GGF#5;AK=7*J1R/P 2D.7$7,HT23C MC K6H#!I3 MU12-"_3[@=?8R. *9,@T /6I"\\0>#>-HYTB?"?KH*-,KN-ZR MOSV^CXV#6-1"7481I9''!["!^?E%RHP6YRCEKP,BS)/V*LZC/105A^* MP"%L '/5SQL:DP,,:D-HU3,J/S'4XB>57L4;:J@X6/PC13E6AI?G+[;>K 9@ MHC0ST8&:*,E-))!IRTUD)X'BPK'SEM0 _8#(D!1P!.ICH%H:94 ',.;T4F=\ ML!$M;:&-3>.TPHSU%$@UO[W#<1(1EQ458*UX_OMC)'_LRY06=-#I8R+=E2,I M(02N89$F53-RZ K;(==JS%&+(]?C95BTJS" QR&!_^#$@:$%LY MCVKR.A "M1.;)P1I&DE[ >DS B%=A<;<8IL>AOHM%<% (>LI465Z^A!*;MEQ M@ST>IXUW^!\IB4F"[W'T1%PLC'N'W7 ;<"H<[-MGQ6.Q!8YR4QE>L@@U"D_ MR#F9ZN9W4 L!V23JZ$HJ*J^D+FKK]55)&0AGLJ),V RF445<6Q=X@=N?CP*9 M4=WJ9HG-5Z=5KY^U/.6EV14X2G8Q@.[+C3-XY:N3^*8>K_'28OGH%\3W_P:S M!%,S/7K;3_*HG^UBD/F;A[%^#T$'U8!^EK*/LP;L M=)_M]S\L6.\\?UPX1LRY45B8RRF8V7D"A%IA0Y)K^?)JK0%PJ#A5IE;CL/@6 M<&@W"-DG9(\265@W2#7RWH'-8?_MVMH" )N]!R[QV5.]93[_$ Z3#(S$"C@& MC&E@Z2+B0'P X]*HZ@ZT6%B(A4Z@CWW=,7VQGJ?,P>118?+@&%[9U^Q#EYG] M4#5[FIL=3AIT@0]4%<(S5/JWC_E]_,!;[MDX^;OJU)UF5^"PV<4 51C4Z0<8 MUCJ);_R82H7) A5L^/9GE9$=F)G+VA*1'-+9)7=EFN&Z9T7I+O(5WM#Z>+(]U[ PUZ0S.PJ._8U7+8>Z&;,N]I MFH.9:F+JZ@\[+.:S;"T?$4Z4N7A"/S_D8J!-&"$O$X3.;(4DWXR2!S1AXM1& MN:TIGC-#.3>Q[L+X(<%PVH3(KC5.W&! #*0*1/ED[=(A$3\ 5EF?$;MO6_HG M_2LF7K8!UV0?O?Q ]1$KB#O^_NXC"9P\B6(? M.7L6*WQQ<1OPLT@LECC(.G','NUE#+Q"U#W$=WW_E37SB/!(_VWU.=DZ" M=LX31H\8!XBF)#P$Q>T\2HQ$?'TR$P8],?5COCC!.&VH1<1GR*FL>?+J![E= MV)^E8;ZA()KW'W]31.-4QHE?,=*W'$RQ55=MO8("2&NMJ(&8ASSGBS MP6Z2'55Z3&,2X)B-:>(" ANI[&S2G9HMS^'OL(O)$SO#HFWQQJZS Q2Y =10 M2ZFLIUL^SNP>LEL% ^U:# P'.4,QFLXI[J?!#3Q[XW< *(S@A/K@)A*Z17%=+L7T; MX8-#O/S 07:.81F(1U YJNG'NR:QV6% %R.I<4&'TJRPHI-" ^-'QKLX%,1F MW"+.EHW#ISTXF<1*N3FR6@)B!2+D]G#3B#^Q#"^M*$]3=X,:2>?908O*"!HI MQE'/64&'4H%14HW*101@ #&*+832H&(^7P"Y=5Z-UA/+?K.+=(GJ>BN)6:=9 MQ;=,]K'6$#,^4)X:'EK]0L]#LY[V(CI**=R5.QU=+'3:=8YQ+3% :V@?]9M; M=,O$'S[ &2=4804HQHII,M&U0,(8"%^-:IS!#3^B0'(@]5>>.;'?)>O,IQHV3=_U>0&.^H]K%B=;V M+M /KW;0P'B<$Z=0PPV[XY9%M5>-ZHAQ9-^G;&F/,YWXE/\$5I @&N>#UAOV M%HBEM8JI+, )O@TW;\N?&7B5. G<=R( %/',C6%6#0YP;F.@Q(35W\;):,+$ M\549S<0V.:EMTE31!!)87 5/.!ZBI*2:T#S!0\,X&B"BH#(_,-%19B10*5C/ MMZ3DF-8[+BE)"G/9KJ64O9W+"MRS(^,1KMT[7P9>6SV&3@2 0TUW8]1*5FKW M!@PM!DH8'S#(6/&G(P2SHBK#0I1E6/!#!]9K,TQI%"K^CLW@JK48Q.4/-F-B M[R*RJ^P4N_B-1#OY"E7?Q=B++VGT-%2KT$&-3A2@PT9W-6K>@R!7;HYAKVK!)G5NE5T&7"F4WO9 T^3G0WAMD,!C!*&"@Q MX8P%U#+(6#;ARR!E6=?J@DC3M 02;%R2P G< 19$U(3F"2,:QM& $P65^<&* MCC(CP4O!>KX+(F-:[WA!9%.8J^>"B&2W^2R[&+\L[\5+2H%P2XCY7M,6EBDA MH)C2WSC%-K41%>@[U_V4ZK^9+?8L\H42JF+J\_&9!XTHR-1<4 8Y4<2*2;". M$^]SV[%9SA55V.: R\U3X[S(L%LPM[(9;L=,Q:(;=1%0Q8CN<.[FZ\U-F."6 M,_V*YD"A5E?1:I(F:PLX%6L5N4,OOZZ\&BZ5J,TX)K:/*5? M7<32"$U%<^"AV::H;-5V)J'9*O(P*X\CAJ;)LNN(FL(*S6N63JPWYQ'VI$]B MJ-K/*#@;595%9ZWQ3,*S6>9AO);39F.HH&X_0H=5]BR,HO"9YK4Q2@.:TB(J MRQ[YH1.@C>/RL_%9,;V ;Y"XC5:8/.?5B5Y5>^#1VZJJ+.V=2_2VRSQ,XCMJ M])JEOJ.I"SU^Q0HIOF8G,VXC$KCDX/AY[BXQ7%L?X'&LI7(UEI4= ,>SGMP# MQ708;-]R-\_+WG*V:#U6N7'].!_7# 7%(H33Y8NYXZK=[D[5#Y0 M4MD'D:D^_>&N)'1_6Q^X!ZY><.22&'L:&9VL'W!PTU9=>GRKJ1-@D-.7?:"C M6HP'RIB@@HO]*<@4RL=<^9 S03AC B/$V6$T6<(B;3RW8*XIJ8Q@WG).85L7 M>,A8Y92!Q.<86K)CDMG+'/L]>Q"/:RTF'GA_\,-7C+,/#_G1[ /E;/6RQF48 MT00R$V>]X86YV#E2:=T,K8[0XUE;^:9+&?)>D.-<7_C>.TWL1::2"8L(4>]- M\+%]\V)$"_"# /PX9!*R:8AX'1<56+"-G&&?@JOB6IYKK#=W.$XBXE)[<*Q; M/CN1%R\#[U- FDMAF)$!&N1]#5-]*;,K#>AGD/JH9!H4Q=N9)"@GIWG.RL A M*MAG8>)P ?C*7,I$F/X)S5DX9:!$A,>&P=U*V4LFRANI32=#;<" M&\P>[/]9XOE$YXW\,:<^))$R4QM](BW M) C8*"JUU"0(?Y\>#CZ_4^?X3.!+/WR^"C9AM.>K=RV7T?5[ T?MCF:HXK-F M5\!(W%4#TX"H\A%(RCBA"BOK%\>G,L6YN 5+//1&/'F(O:^1ET8,$-@E6($( M; O+UEOGU%04&6^IB#>*-XZ/6P$/8@07Z&;H M%X7UGP481R];KX2$>_S -F#;8JFA(?APDBEW])S'42O00245MD<)>TH2<9KV M8VLL]?@9 VN+%&ROD,9[GBU MH@]-P- PF&J]DD8F 040(4.EYAN;:#;MM:%2$.O9M74+UF8@7D&?'Y<,,I.2 MFDD'*^,T ,SQBS3\_D;E&@V%7_9VL>P.0WLO\""EI78=@Y1=0$.,GN3F""*Y MC(5R%K: 85R]BY*T-(IYN6LO.Q -X';2.MHZ ?G=R?EJA\_7'V^7-7^<7H&42\X!?DC,JX6]C_!;- M;#[GL%48=K (;N#QN0:S2E7CN*X(Q L7EB+QW+HJ%,O "[%0*5=M^L)$0UPV M2Q,8>": TW^#E[E9W.H&ZC,*!_NMGH$7CG_%Q-7+P$S]OPB^F^1AGL(2@# M!\@!S5<_X=R;+& 8'%([XSL"J_/5S0-:GI^O/]T\7-W\B&[OUC?T[_/51_K% M_=R"L2UW&8CTYQN.RAQE"+J?9T .-U!2(5#) =7%X-E()@@[A%EKF,L"(/T M84F0V':'GW"08G8/K.D-^99D0K\W<(3J:(9ZA3JMKH!QIJL&Y@'P\^KFTPJD MH[<-U!VZS]O5E0.N;M_Y.ON <"\8B?O2.2OT3'FAG!F D7$Z<]@,_C/'9[L5 M]SN,DSOLLZO1Y:)"VXQ9NS/PP.]FA&K8Z_4$'/0=%3#>)?]T>WO-D[GE-;J\ MNEG>G%_1O^X?E@_\4W2Q?%A:/ZU>-4;%"FTC8$<2P(/!Q""RP^MM_0$'AI$: M@QPBR;@ASJZR6 UANCBM5<""Q@6.R).3D"=\%5"$3//Y\D_8VYH=#>Q'$3BD M#&"N*L+T( <8<(;0RC32+E9W5S\O'ZY^7E7B[.KF_N'ND[T%& .#M(W4/4E^ M?F&F',G[T/N\ FVX,:UDCBK<^6IQQE]VT-;ZV&_7;C 1ZC'I,,)+&H-'%962 M=;QH:@D:"90"F_OJV0-:GUU?_2B.30#PS?:!4=9Z5M[9,IPU-IV-?PXY"#TF MT,:6D32%$(K\#'K;6NI)(^"!UZQ4-=[J+0"'F4104Y^[7BWOS5;S);60KW$< M8[P^\)>'*U>;Q,,KTN7)KGV!.IR1"8I2Q[H=H=:B[,2V&!K6SL/]GB1'YY@E MHZ16!\@ IJ5L@5K*U@!'T@Y"&]\S7'_\>/7 Y_K\5/K/R[NKY=GU"EW=/*SN M5OW4WIVCU:90^ GMU1<&/O+LG#FIB-K3?L MJ+['6Z;Z'3Z$$1]=6VK7R9L#C^0V16L;_)*V@*.W563C+>K5CWPGFOGNCZOU MCW?+VY^NSOG2].7Z[B-?= #AN?J#DE[/F?FSYO"DT6U&7CX&8&<\4,$$UG U MB0F@QGQ1B4M[3TK= WB,:ZC;6#-N%C.J+E(;EUF[H>G7"CTL_]M2>M6@7-OH MU-)E?BZK'(]4[>?EM,/!;UG[$-;0,Z[2MD-UY42LM#A[V>)^Y[0.+(KFP$.T M3=%J>,K: @[-5I&-ZV$M[VZN;GZ\1[>K.W3_T_)NA=ZL;N^_!N&M;:.*JOW, M_%4YGD@;S\ACAP/5G#)[FPAQV@"&D1'5A12AUV$,2S4T!1V:;Q.:+PKP(P.KFW-:Z[S7>.OY')V'1RLH@%$J2]MM@NGVA M>VX7$]2/_6ATA.S5G>0W/UE N:",C2@64F4$8"":Q@[V8_T^?8SQ/U(<)*LG MC?JGBN; ([I-T?HESN:V@..V563S:XAG]ZO_^L26?-E-?4MW#8[5:[^4+&\_ M,T=MN6XL:3PC5QWR(G%.&0G2 :2$;4%$9EG3DSB]:92(BOTB?LJ_K\\2FQPU 1[(30I5P[7Z/>"@;!33U-T$L>P)5.JW@)P9$D$-?4W2HX!>4$07GB-K/"@-RJ> MB/?^^ULG\/">N.H,5*\'T+CJH&[E4H6J.?0+8)K2&U^4K=WU8N\%.V7%XH.( MQ$T8\6_.US]?7;Q]_STZ9,),?/UK9%,4ZN4,[$/1%&K_1&**,X0-_GPYFCV3 M%23H:G]@U3FI4W#^U"[0*LUWF6X;D &*@'T-HUDM?FZ3<6-51JD"#R^9F=P^ M\@KY=]BE__5?T=(+#PGV..P4'U[%<7KZ=N"4!;';=H(:F@''"IEB#86LY[#C M(Q6U9V'J6/&J+82*['I#76CD;I4*-]/H.1W" MLHG."^>B[G)J(W&8CANQVMA*'D_$[8?\AR \&\CH:SQ9.F%&=18 MU%NY8=(/(0024KSE8J!2#B0$8<'*14%<%H"H!L*:VRBDQG'V;%=5+';07";= MI_SM1O8Y!;O?^1IA?I+G/-P?G.#U3[1U_DL0C]5XWA!N85+^$H[X)?C:_H9K MB=(8;U*?)DI/UE,D]DI QVE38Y?9()YTSK\-$G6PX&\0+A%]=//98)53ZF69&'(YI#'0A[?%+4<[?W3,9Y&.N%N+PU M\.AN4?/D!8W3IH!CNDUB\^OR]#\+Q"B#B>2Q=+U/]WLG>LU';\X&K5X..(CQ MX*^*5!]Q70;>FG*,KH)-&.TY/*PWV3,"K5O,_<@!C=FA#'7T'(D1+>B[ST.H M-NPV-"F.+HM1#3GLH"%/C /TF+VR'/-7EDDIHI6W3.R8+7O>I/[@--MZYOQ1 M10"TWI3OG0#8@[9IM0H^"VRNVBF[D$JG6&&03;YH?D61FQ=XB4.?>'R>5K/Y M\&]%'5F"&J?ZY$^\N_?"Y!] /R $^]@]MSN/7J08B/X\18G!MAQTT0@Y] ME?& +['$%0GI7"G>H0V5L=8LPF(%)@FM/HH%Q;KYTUDG(PD;7ZHB(2838D+! M'W# 6+&(6-)5.: M18DA-9M91Y!RE^?X1:)*!G;VFI^6U][.[$H-.++T-%/S)F@G4H 1IZ]&0VPB MGC[W5>&]8"O M+DCL;+<1WF:3UNQ2HU:NH]L7.!9U,D$5>;0Z L:9;O(/L9D^V.,GOK/.'(V6+DAOL]A::8"43G%VD2)]2* M_!1Y+-9,:8L#E0\]%B;V,A.O;F&\5EW6=*-&#A(Z(8M/+NJV/G?0DR9T4!O" M9'HO"&L0A QP@^AE'+3'TY %JA"'P=; MEEX>JRHQF[(#<%QI5[96?T_:&C B: AM7%.O&)<;PME2W;PIM#TI?M)_,2#& M[C?;\.E;#Q,1I/2/,C;I/_[&$2B_;'ND?=/W0"-/J@H+M),O <:57$93Q\JI M93G_@+7LXBBI0#[]5^E2]!]_NV/7,Y2)TIK8=3YBAH@RY8IOH;M/78V: XFO(+O0D80]G>@BW#LDF,Z-/I* M[-.]U)&.OP?L2HVJY,Y4^Q*H.S7+:.I0&37TJZ WH4LY+VJ7.OH>LDLUJ5*X M5/5+J"[5**.Q2PEJP[F49M+]6IF27Y, 7R5X?YPRM38&ZF9Z2M9R\\:6 !U0 M4^!>6?MK[:3NKXPZXN3M%*2NOC!UD49-)_Q;F@)U4QT%9:^?Y>T NJB6N.:G MTRJOH:&FEMBF#IP11R&_%Y*1Y^/'@GUV%E+O'GQ-J+]3-ZP8 MZ?68ITL?KRYI-)^?0P^R$J7ESP.O4_5W9['FTDM5AO[DEX,&^ M16!31\W)+E!)&#'*MAYX'%E/7C=0T+42AJ5:Z\UU&&QYG7%17?PG['N78?0I MEJW]Z_8%'J2=3%"-6:V.@$.XF_RFGEYR62#&):O(S_DL$&/T=A-&;S^=UIN= M9E=O&BMPS7VN>5;VWG+@*]YF7T?G_,V3JZ#:@@0N.?A8M1G8ER9PH!C$9+6K M&'T( @:68?0R#;62,+IG]RB=R(O1IP,KAW],X MX8:BN*,PHV+WLBL-X$%G9))JD'4B #BHS/08(X@L[GZRIW;7FV566KMQ3ZFE M*7!W5RE8]>JF=H"=5RGN*#XZ^"6 +C!>"%;()<2B+=^_>Z]T6]V^P/VXDPEJ M<*W3$;"G=Y-_#-=GC-Z^>S_"I84)IA=MFX)#T 4>.H.9;HBIQASV'8?3S7AY M'3_7)Q-5&=AV1-NF9>]P55A)"FA\-,>>Y$?I1Q%XB Y@KFIP]B '."R' MT,KXO(LRWA9(,7[2+X40Z-R^'Q-E9N@&WX#6Z^A*3-[2!3A Z2BL6RP7 M,+!HB6WJ\Q>CBR_FJ7L,#]G'NAJEL*=;>YC ML/>FUYM[Q\>Q>F:N.]#H M+W/>X>]B9PL:\1UV,7EBT[T;G)RG441S#OD%;:U>0#VTH]K%];3V+M!OI'70 MP-1Q;R/"W\@KGZ"*BPS6=<3J&&:I[<&)8[:*YF0RH:@0:H$"=@[<%8)-_(SU M!#9:GJH,:;'PNN6\A48WH)'?57&-AAV1X6.U]%*O$]^[.:C M, :$.,9LQ@U!Z4.?8 =1UG3L'S8858ZD$G$GI1BS]8RL?+'[O@+4ERP^B7@ M9R8;(D(X%&?2H0,7CYU<0RK0!Q#A8P;D)],Q^@L!E&'AT?#9S!T@Y\$"=1 MZK+XRH$^C,KERCN<."2@\DEWA?7[ X5+8U/4=_(U.P->V>NN@_G.?\D)E:P6 MZ*ZR;%^PLW1X>#)K"$JL< N0I?SR-?-\<^$F3'!\'3H!Q4_O4NS&!-O2&*HC MP>;4@ -&3S/5'MHV(P483/IJ9!I,.5\VLN:<%XCS9N6A*'=>HZ7@7X$/ATXWSQJ7F#IV!NKV9$T"?RW1499HW3=6*V/;7QPV?$ M?A$4.V+P2!C[II1L\IVJR2R3DN"&*8R9WTMQTBKVER6QQSOSB MD!NDP3,J#C$@'%Z0F*NR#B2*W8?^<46$3ATAPV GY0L(U.H%'?ZZ*3$,]'D9 M3^K*?KZI(T4]MH#E38Q\TQ@EYX+6@1SK$&-E ? F-D$8M'B Y?4(BO\''"6O MMU31A&;'JW^DY, "2V\!HK4[4'0T-43S$H.Z+^"Y46<5>B1"G/P"<09\4E2P ML+I,(%7\[)650%3<6=+K"3P .JA?]7V-;H#=OHOTHWC\ C$^-B\[R>.=,E7> M>M+K.5>W/U5?R^W+;G-T^P;I1W5[FS>D+],H($D:8;YF_L+^4E^55G8 [N;M MRM9>KY>V!NS4&D*;^G)!.EO#%<1[W:N6OKBZ/Z1TWO*3$WG/#M?E/MPD[$_5 M*ZSMG8#Z9S>E*Z^UMO2 OBBAK\ KY9X[+252_A,,WO!)(WY:R;LL+83\24+ M$FS":"\.#\:O,=N,X-[N.@>2.#[YG78H#J0>J$'8<7*/SER%U,@Y''PB#A]. MO8P[OC%S#BAGP4V3,[%;8.$:4Q%WH>]=[0]1^"0.]RL',G4/H$C10=WJ4*9H M#G@LTY':&!ARVJA*?(S!;)DFX3Y\)#Z.'Z+4_4V<3L!^F6\J+J[K]P7JL$8F M*&]@:':$/M!UUL/4K7_&.^*R:C?)SJ&S#8K*?(P[\'ONQ']%='AC*[!!? @C M7A?R@$->*M)WHBU&3WG_L@G(>0AC MOMFU869 SV'TV]3W.:;Z32J,D."4)=!,\ M:_'C>@:G@#H(/](:][7\M,\TYV\G,,'JOSY=W7Y4UHKQ'F/.89W7?"15C4Y$V!!/8SB M)7[QS*>80Y#*',+.,BX_48GYK.:.;'?)>O,IQOP1V#-,LR^VL9_N4WX,8[EG M.=SO38%U606+R]%W!\U%3[]/$: M:1? &*4K><\';#BV9!P62/! O^9<+.U4C*W[I7+IP/;Z9;_ERGFE/!W-H+D8 M.9,TI*L&(RXU@EY7''9DKQ!#6. +P,7#\71F!=+X295A7RF)4NS=IX]N4=B) M%[ML/(>B: P4KO24K#Y%TMP2_+&M5L%[793.'B' V8GBRBWIC#&J<>;E77F& M$N/HB;B3%XH8SQQR?6T4&!]?S[BFI]NDYR1IUSK9X2@3ZIHXCWF57O& C 2F M6SL!1:UN2E=S*W4/P"F5IN"F[LS)%V!58;! &0L[R=,4:@]\W8GF7?G*S:WS M2M7T'YP7623J]P(:BAW5KMUX4G>!GE)TT&"@LM*N$T6O[,CVD^.G[%AV7E+X M,7NU+^:O]GDL$:'?A(\^$2\CQ>Q5%2:3QY..@_/*SW6SL]SLE;24NOVHC]&^\/?OB*)\]W M)OBMJBRX23(FB'.Q@Z+6=*_YDJTBF6S,. N#-&Y+@V1M@4*NEHI'M2Y/&P+. M==3R]LW8,[*6$YMQ=7P49 ?,;%892/;]KG:<*]&];^< HELF)HBI5"P/^N,H]*Y2;9&3_ M)8Q^H_I7@*%*@/UJSF 1C? &4$7Z4T]/./Q)U3+9@LVEO.% M*2R09P_/N25JTS<2Q&G$T-UR8< H M;I-XB(<<YT_/GZ4Q"7 J*+K8U@>ZX^JH7'-?50?(3JPE MM[$K9\1L5E#,9%#62CQN ]T[FU2J>6.U 63O:Y2SO[?U*%PH6S (<+1]E1?$ M.?H>J -)52D7!BI?@E\0:)+5>$;(B4F+G8P\@9^;)BU3]N'5&324MW2DPQ&= M\K.G[E*?U0VZSTZNJ")8']Z%OG\91L].=/QVD[KE3'RQ0;TF;ZPTFX$_-DG;WR,95921M71=:0P% MSW>T'S]@=+R-&&[0-F-H>8GYD@0DP=>L$N85S9/HB/7HB]L+L=ZJLP8!X '; MW1C-:]-MO0&'MX$20ZQ@"V9O.3=4LA,7FF*KZ]H*.YR]?G3^'D;GOA.K5KF[ M40 >(P;F.+KGI]L=<)28:-'COI\J-!Y?$6>(.$>;2^@*HY0FN7'VZ@>)NE.9 M;\"HS*(9-$TDYADX2DW&"9Y%+7086[NO&:TC#T?KZ#8*O=1E"U5GCON;'VZ5 M#T&T=@(>'WI*U^XS*7L ]GY-P8TO]C#RB/ISR0!E'.R69^=OL[+P4C]ITM , MN._*%*MZZW$;P/XI%=7XW"Q_+)=3M.N!-V' SW4E>+F-L,;S.LH.P+VR7=FJ M?\I; _94#:%-?;8DC4K:=KWW C]A/SQ@[P&[NR"D>/[*"TRH7;B]%W _UE2[ MZLPM70![M*[DIFY=T$UURQZK9E?@7MW% )HK&][H3F&_O=GN#I2&6>^##BLSM*Q #WV,[4!M(U@&5 ^13C M3>I?DXWLE(EFU]F"QJD!]&"B[#=+8&@0?Q0H6"#!"3%6T()_0"/42L/>XHB$ M'GI# O2*G2C^VE)U^X9T:?7B^BFKII ?MFLM=M^1"' @,#-*O11^%PJ P<%0 M$?-"^-)Q826KBSF3 QX^98>H1U(T&Z!@R M5,4\BG*&;WW)LE13/-EZ?V)RZ[P]1*&+8U84.Z9#K[OCMWZ28N,%\$C<"Z;G M@!Q=C-!]Q 6-$IT4F&2$M?.BX$26$&MZ,!;S6D!0S!6N C=BKU=<8/%?,T"5 MT@(/#3U,U"&S:"8$&CCZZ#->CK'(I[@Y;_0FYSXPL.@_A&?+5FT9!_W<9:>< MR8:(-SJ\XCR(Y;1$L2K:"95,Z !')&/3:.XQS Z)S'49:X=A*@0:8(_A#^QI M.%@9D2(T M=R3^37&/M*7+;)Q2KG"SAYZVGX6[*L0>P'=+ZC;O?)8"G6@/'TN;0S<<]5* M'JUT-K0$[*TM O=8R>1D44QI(B>_# 0F78A_I!%S'<;QV>M/V-N28%L]$M\Q MD= B!MS%^QFI+?EHIP0X1'HJ9!I"&=W:70V;^4J#GLID1=4>>#"TJEKU=VEC MP"[=+O.P7FLS0SEWXMVE'SYGDJFOQTG: O=7I8JU*W%-#0'[J5I>XVMPE"K: M4+)H1^G:>9^D'%2N6VZY-;<$[I$*]9ISA>L97%E323O$DMJUY=MHI2PW(<-N MQU_NPU3Z/):B^6R\LUG19A>MMYV%GTI$[N^L"Y231H*VG2V;T30MM',:M9LX M'"_)"]^3*F;JK>9HZC&;H)2JVQR7)\UG$9IRJ8>(3DX=%:LPC+[M"!U>8:%D MQ-X8?^/$R&&/B;MTVM0.L+LJQ37U MU[J/+A C;'.=\5A)Y2*CM/','%2^O-C<K%!;YLL-76;BT2K)!_'K!>(L\G]:K_E9S>J5F_D-#8$[L5PY M^30,>%JK$-9\+:0VW;)[SJ^J7>LC#HKFL_),];,,LK:S\=(!'UHX\M5%_]<4 M).^RGD?8(TE1F?G#N_??RU]C534&ZHAZ2A8OKTI;0G]OM5UPXYUQ3KDLWHT8 M;4MOJT+1LD? /=#IZM(/G4 >9J=-( >71*$BI(Z^AQY(,G%-'>L.']@]+K:\ M2]-A1()-&.U%1:D#CA(*Y^QH%)T#LF\9<\28H^4WTT;6T&IS39;HFNDR0A1= M8-]YQ=Y%Y#PS3HS-I>,2GR2O\KC2Z00YTK25+F*OM0?T:-178(#XK,:F\QBF M" #G7,:(9+Y(P-)=>=R>-H$F.Z2R$QIN^+?T[^G#;&B-Q3(8G]$!6@*[;CUB M*FL--/@TU92O.%S/XKBI6N+!UL:NK9\[K2IZGKWRW7+V5-EE5F[;K+#<=^OM M9^/ $K&'V@^V^,+!J'J*2FALT+04FQL<1=B[)(%#_?H\C)/X!LO#4M8:?$0J MU:P'8V-3T'&HEKC?0!+'*:.*.-D%HH1M%1 ;2\]"19=1Y!5Z>!+KD=AE,6ZG M+"$#P(?LG(W$($=-@,=@DT+')Z'R[P%'6Z.8PXQR=H:W016Z3Q]YC5$[U4LG M467R4Y+G*46](%D&'GN -?N'^E6 #MUG@!I=#"$[6ZGJ"QQM.JDP5+Z=,>.C M845">*BF+R[+E3$*S0>"AHK.L M;@\Q3D=1G$\@LV"U$IIW^"GTGZC-Q6D8Y8ZZ;A_@@:JEE1T AZV>W.:[ M>AEUE!VD&F3+N/]8@Q,:6>N-$$KIQY*FP-U7I6!ME&EH!]A9E>*:YT2,*,N" M,A^UZIH_.Q%A]R+8K7?%=82&9L!=4J98U1V/VP!V1:FHIFZ8$^0%&&Q>0JAJ MIKQ^T-AP1EXHOW)PVFHFGCC0-8,C7[1Y<_:,"L2D4 [2)XV >V&S4E4/K+< M['T204T]CY'+O,YJ@A@&7ACP"C2/3O#;>K/!-#=@X2L5?. M:L&R N#A)BJ^8<]QO;"2X*U(W9Q@M"T7PAY)U:N ),3Q M49@F<>($?)/^$!&:5A]LG7PD >%[-/]61A%X3/;]W0.])OD5;8: MT(T$\"@V,4AM;:=#?\#1;J2&:5ADA-%C3AFY&>E!"Q_4[A6%3W3,#9*8WPBZ MQG0:ZVS9,BT),VEN<;0G28*]!_H)"5B]B8==%*;;W7^D ?[P+Y3#NR/CC*'/X\_JITR^S*&-HF11QC?CCA].8.<3'%P %P(BC[\>=[#W1\F MMS/PC6+W(4>_=GN#&/K^PPE2)WI]3WF\'SE5J7/Z,@:])O..,:.KL/ERAKM& MK<$!;R8E>L]1X/U ]['"$G4TB>VMC"K9?QO#6:O@1ACLISR]G^&LW 3BA9$S_3*&O!:CC[F=]^$+/0339@!P6%W=$?GP MF1R ^>-'@#)\COI+C+U!^&'R S ?2<"$O"0OV#O?.=$6LZ\* M>2(>_?+QM4JS1H=3+NIJHH/SRNP3B\]=)]ZAQ'G!U7\3]L@$CI-<*&I3XC)H MJ/?U"/OB,64_2/PU4\LI\(8*[N&(R^2*5]*<;81YD?-O0 R?8[N%:DS,>"/. M' GN*&'TN(FQ5"3!]0REIS&]0:3=)RW B)S#/ M@41#GUY#2):'.;RV,@/Q1KR/T\>_8S=A29K'$";'6Q"@.J*)CN"T0--B)I$Q M156N8$!T1,/D^C=XRZ+N(@.B:(;9U^0?*:&\7NFL!L>[T/=63A2LT^0VRQ.: M+-2A+V34[&J" BUU.T)'RT3ZEV6HY:^734K0E M_"5IO-EDB(FI9*S:?)''LDDQ Q_%5R>I@:SK!!1C?\/(X_+P[XH\3$B' MA'@38Z8UZQ4L3R$3";83V*4%1^VY5F&4\S^JBC_@:'\= M.L'RR2$^>\WZ,@V\#@L W8A"1NC!C-:VXJQ/$3J"#Z?@& N.S2B]0$P4Q&19 MH$(:Q,6!L)SPA_7ZK]Y.:,+2!AM&#S% X3G"!?:=5^RAB\AY+HUF!^2'6.GM M3O@S ?O>:\(=J7Y&H#_=TJ@6=$V^:CH$]'_I-AQL +"S'#UQKG_FQ"2^/T38 M\=;!STY$V-#$WF*_RG:WY2LNIH3F _,=C2.!=4TJ\X+QKDH-!CF<,1*<41B@ MG#<[$( 7*&=O98GE#Q.9@/!4=BH-LO%#ZN848XLC/!&W3'FBAW-$;_AA'?H/ MEXKY-8"7L*6F.K[G;- =*"R;&D+^T1CM$$&/(3( M,9/I?T\'<^S="N&<+=:R9@N!6:&$CC'D.*'J/1NDT%)B,*PH4@N1:0B&J.0( M 2Y&M<@5-'2X;GB3_3S<[TG";'&)<2L\=*, '!\,S%$%B [= 2.$B1:F <%X ML2U-P0WE[-AZ4IEVFBR5 MBH8QE^4"QVY$#DR6!S:1EXW7RAY AY$.ZM:R3GESR%FFAM3&626GO1#>NT 5 M^NA7SN'_ G)CEEI>)7A_G$'I]YJE.Y^HW>[219?9N?6IY&.X-I],<38G_CW1 M+&ETY>E_; Y!:SH-X^N\7)([S"[+Y/]B9[*4=M'H/(M(UC7":4"W]00?U]H* M] WO@E$>Z 6O+"5CW&P&^>B6*"W@"PM$A07X!RAIL( U*%B]D#C!-(#6F[5( M9,+5"_W@^&2,*8T9 D.K2=KP04I@9C#1KL?@:%&P9&NK@BF[I"G8HE_IK!"C MC>/'IXFP/0P9STPG4!(6%L&< Q@8N<,!?G;\SJE$M=<,H:)![?;DH>@R,SAH MDGR$=($S 9)5)S(S#'H=PQBD" 6-F<&" MEBI3)0H%Y_GD"L,92Y$N)#F3 ;=AF_0KE&G(!+0[ <6$;DH7^Y^M/:!O:>HK M8.JX=_A )<_*#H@),B(!>MX1=\<_">N>S6L1/.+2J[V)Z[2,;Q+!X13W2H"; M/D.:2/43&"M^9GL)TAV.B9V !Z54M?I4XZ@1X!"4R]IKEXT=QHD3]&M.U5KR/XIVR*4DK816 M?<1GFDDT;VP(/+CDRE6CZ[05X/!2"-L_,:M$VBCA]82CQU =8*/JY]N-M4M1 M])UKEM^\6(EZ[A)KJ'L CSX-=:MAJ&@..!YUI#9UW(QV'I;%99V,OJT0'5/E M0L(BO TW;ZD08A\U?^6G(@BJ2F(]*8)B09$RH31 IQ\_0,XA&LVF\&/("4T8QQ3&T<7NIJI MS!2M6I09$:!DT#0L'GTOS!/PMU8\4T0:R4I5$WCLD)]+&DU@&U6Z6VS6.-$1 M$.89^>.'N)V9W)@JBVF.=GH +8QYV4,FWGHC6A''OPUCPB!G)6[9//IT5BC= MHQN*]GRAH;L)-4%$G_ \X<9 OQ%SCT(:=OZTD ?E J%?2Y'0*DCW?-4D#.#- ME69E5NMXJ+NUU-9G1OBEM:VD[# 3O!E^7Z7F\(#VDZ;16BSFAI8KQ#7JVL4N M,XU6[2B=6W0./0Q9WC<:1T"5HCEP M\&E3]/2B_FE;P!#4*G+/^ZM9P8BJ.K:*\]6WJW_!;,J!O26%*F?;4)M, M]AJ2 1G@86MJ&/EAE'8:@,/<6)7!CJ_D/%'&%%!=/XO&R<^C/>?6<3+K@*GY M5TUIC/&E,Q'@Z&)F%-E49=;(8JC(0),;>ZC2<38PH6G@8XH2<%F"%J8!?X8J M>UO&!+>;R0#'%5/#:&'!D]JL^:WRQK?< ME*V!QKVFFD6-07E3Z,4%-20W/GRXY\X7;D[*!V+!XANT>N&'HF,4IX_B*Q*X MX1Y/7$YP1",UB!"U=%L(;BA:(>?RI3?1UT.;RE[ P\ M=+L9H:UNVVE/P*'=48&AJ[EEK%C%LY$/A759:!C1$%(TJ)VELH,%1\?4UX^) M0P+L705T2KFCZN++,.I6'Z0?1>"H,8"Y:C7'S/)_<=D Y?Y8O MYQ+PA/IX3<$R&H$P6TKMX(@B9&'%;KAJMY,9!O\41&K3;!\J8I[:7:1MBQ<= M20 '+!.#M%=":NX/&)*,U!AJK;)6R2]GB"A'ZTL9=LP"YFFX C]S=<5Y& ]' M[)9>[#K^7[$326S7BR!PU.AOK+:'X_2H 4:4 93J=Z:]X3&Y@G\),_G#U50& M<=>328&8&' >DYO(;#5#,'R BT,4=F_P2_+PC/TG_#$,DIULY;0'N<\!@Q2& MZHQ #;3FCC\JE:9!'Y;E,!&0D $)(0!CSQ@FHR#P'6BP8?CZ\!SVM%M)Y3.! MEB.SF"!*1N(S ))C3:;##\:9XD<(&S6&L@\-XG^&#Q:4I^P-'Q,ZGQ-@5$UC M#!F,R.<"&C5=IH8-QGP&P#&(C6A(_QD\=%Q22P]@L8S,9P0<5<.8X@:C\9G M1DV5B5&#\88/&H-8B,;ROPQXIEU7?EX[6@('O0@!!83^QBD.R1M1@7Y^OI]2 M_8_6^YS_GV*4!OEU#^Q5RMM4-CX/V?F5ADU/Y%$$$07=-U2^9(X:#X/O_0B=BE MVD,8,9'YP9*^-J G=\^ M.TTL/010WZGCO&T-#A:M1!'^7[DC)CL<8>[:H#/,GL,JW '$U! FF>1GD$%. MGSG:>E9S(GM47PXZ2,YLVSWB\V,4QO$%V6PH4-$P$F.[Z6&?-F+ 4:*?D;0. M "DI 4:0G@J-)M%,2&2' Z-)/GS&3E2IS)+AG*&/K(1][MOH!7>T/:<+/-HMK']8O8AF= M5>Y$ #BD=#=&6\WMV9U2-E!BV)KYM1/*"Q!'E*>W"1@H,#J6;$1HAM#0_1AR M=RHS@XJ1S\_*"OK#/6QLP4@P#ADK%=<_7&Q 9LY(HGF8N"N-N:+(&"=A=3 $ MTI'AR0UD[:APFZ;J(\+ZO6<.$(HCP9I=9PP'0QUQU44!NP=_I[*&M0._6@HJ M#OIVZ?\YA+WL8*]VY[F'_B"'5+L%O[WCN]-9Q-JQ71T5%<=U.W3_#,)?=CQ7 MM^_,@W^0TT2=8M_>(=S)[#'PX=LVN5L/W78E #2LS8U1'++MU!OZX5HS9:P= MJJT_,9F$Z!&+*JA_G*SM>+)VVA]>]@XSL(.TTQH%R@':-JT-AT*X@T!7Q;OD M=#/.Y:;*X0 ]\_Q9'H.5[(N;'((U)#7#N#!0UQ+;U'\SXJA*'3'RZ%?.X&2L MGZ8(/DZ(>$"'B7+C[/'RA<@.14D; W=?M9*UJO2-+0&[;(O YF?YR. \?^(]X^X<8NI0U^@7FID@F)C2;PGO C)/I6 A6:MC:GZ.P1=3]D;X9>TZ^O$KR7S74Z$0 :U^;&T)C,-_0& MG'@:*#%\1)3%[-/]DI\0J7X9W^)HM3_XX2O&]$\72Q?" MAZ$\SY R,9]&K'4A.[\@--)N\.AB(N,PX)O0XY5!>:0 %M4).U30^T"?'1@].E!"7'-A13!(@+P.]6I >*.N)#V5:-YL"_7,A4"Y% MK=$"98(@(8F%PYO6C9=;X-!H@6D1>[G%ZTT^J!W/X08C^IEA=K/1^H!VG>)G MB-H2!2W@SU+D484LX)'["S/=X. ]L/V62?:F-4W((:TXJ$R0S5;6&_YEM^E0 M)[I @7YPTVFL->@3G=]*@X%N%N JDX1!%F\!:I7!@@E/9BV+?-DA0OO6F M/)R:O;-X^O!5!919P);+-2HHB=*YO2D_4O]XF3I/'J)<%!S%:O MKTG<,?V1$YD'7G0TBM8]BT8*\)&CJR(CI#.4)1(\T:\E5[0*TCTOUA^>'B>V MFK)8-=& >P W*3LLMM[\[$2$78>YRBYXK8*$)*]-2VJM/8"&?P=UBZ5Y=7/H MZ^Z:TIN?_3]0:KS,2K)C^YV;,-J+@P8T8V:KGFP03$(4<#E8^OR428(P$X'@ M>.*-T)$MG./MRPB[G@!)>I] M5Z5/GKUF7ZJNBYI1 @IX YBGFO08D &<^?31QG@C/^/)@B4CC JVJ,)WP>9- M>8O!KZG&45*)*OJO,J+H/_Y&,X\X](G')>$G91NNIBH; HV'=N68N\M; ?1F M#6%-G;5&5IR8'OPF:F=/;+Q]VM)T5MYX>NM4U6XV'CG0;=-&G^QQV;1WYL%S MJ5@ ]Q)PT1IOJNGV >JOG52NY@W*#@ ]N)O27SS@ZR*G-?^U:SB6=!,SE@)X_+6P#V\18_>;$)QSU+^E/G:^QL#JW\4-8)OG8:RDC M:TH+N,?W,E&]4I$!(<"1TD^?_FE+E;OU:K%VC1'5N - DO5&G$"I&:)J M6Z MOR&I6>%(-P/)842/SFQ0I*,ZYINE-? (-]F!*?'&1QY528BJK*V6J#R>$G)Y M"S7H%)'.U+JN";31 !Y01B91K1(H"0 .(3,]!ELW6(C@016.?.' _AH"/[9# MQ]E?2+([3^,DW./HS(E)O-[<1L1EII+7>=7N##Q,NAFA/GW3Z0DX,#HJT&,C MA+-!SY0/RADM$&?%!I>,FVF4-:2[=!]]N$@KS6KVW?6(3'<[J!F4-C< M,GP@>[P,O(\.>_>-SM-RJ97+=ZV=@(> GM)5QU?W .SNFH(;OP9%R;]U N_M M/FMX1 M=X>/FML"'B9:139_R8@21@=&>;*#>A^=OX=1GG#)CHLV-@+JA&JE M\F-YIRT .ER+H,9#0CX(3'PFE#TPP0I=5!22'@I5M07L>*TJYOXG;0C4#=OE M[>^-PS\]]Q ^B)KU1>XSJ?891L0I^$+*GE M;P#G3ZX'6[;WBP\.*S2)?)XZDX74O*0X82K?IHT_<3PE_!50>3,W-((>30K$BH!K: M0 \IEEIKS1"1P_=3C^Z>/:8*",$'LXH$8OA8(^]A- MV!(Y>_8V<)(THB/9UHD7Z)FM-2XHQ6=GBQEA= MH/N'YS[Y%5<^&@37P6_L(TW4<)%W$TZ>8VA6T^@ M<6.@?G5C2*,;P,@SD;Y_^1[!I=S4%8Q0SLG.)8=I31 ?F0 +$X02$TQUC(X5 MGQ4[ZGPL,# M#HJ-PP?:&'\,@V07KP(/>ZS#/?UE^:S[NW?RQ2=#.D"=MK=IBN4K$R+0U[=Z MZ61\*BX\(,JU./09+Q!GC 1GQ%DCQAL5S-%W[RR]#/V'B5K'_]G9:3S4O2'! M$*"K269&F-O%,#+(U:$Q,\3MI-* 4<+XS@)OOU@#=4);P%::-,-]OW:3D/)] M][Y/?MM 949(V\$L'7+;8Q(SP]DN&HV>C+Q'&6OT[CT,E/U"S=,WHX5AHRFS M60. U2(R(WS5-XI^'CMS=.V@T-C)!SQL_2*-TS-[!6&A0<_]X4<_/&?;FZ_W M[BX,_0L2L^-;BDN;>@HZ:NRI7C@>H.T#%16W[C8^Z< 1(33FAC!4J>;$]?O-#7[^:QC]1I7OA9V3<88,O-.:7R/9')(M=,B?V JC9$(+ M5,B*"F'%^3@&'%1>Q 06MU^ X*U!.OW'#P(QU?_2?Y5IIR'LOP8+*8-1ACR. M#FN^+K,;#;+0Q\&!M1Q_-L#_ K@<]( MN#S@*'$(+W*4A/S;\ZS,$94!<2&F+A&>4T;;\2,C1[5C*K.U=$$6/N;GPJ;KJR\Y% M\SFY<(/4@[NPS2<]\A. )XHK2[.W]X+NS'IJUQQ:W06R4VM*WKN"<=/%?DGV M-(ESER6?NKFW3C_@#JZM>M7%6SL!=G)]V?L7$ /GZ V9UQD.W-W>B7[KEE(? M=P/NYKJ*MR37M3Z G5Q;] %SE((!J%R[D*I;PGW:;78.WJRXVL'K?6;EX!+1 MQW%PFYGXO>/C^ X_X2#%-UC]-)*L+7!G5JI8>VNXJ2%@MU7+:[X:RPE6'=1F MDI&)PQX;;WH74^FPNGV!.W G$]2?H=?H"-C!N\G?U^'YN_+-3Z+.)!BR,L:% ML'V"0TIKWL&B-E&'X&DF--]@:M%GQ.!:H/RY^A&B+*^4'2>'2$08^ZM2N9W^ MZV_GRR.;E9\"]?8CL7G==?$10 \\ELPXBUY>7UVN[VZNEM.XQ9O;@,T**[< 6[K,THGE6W^J]K-SY(&V_%2N M;/7HG>.331@%Q+F,Z-"P(S&SP%GH1)[Z\)U&/^!NK:UZ;0+0U@FP@^O+;IP9 M%QQ0P8+[/&=B=[/D!C__!YLVO%Z0)Q(3=K&*2L8S(Z6GZ_0#[NG:JM>>?FOK M!-C3]64W7F7$STBP0#D/=I\EYV+7U4^G$FW+D.H>P-U;0UWUU' .*Y$Z4@\Z M1;2]%GFJ\ 7>X"C"'DO1XA@GYSNJ+KX*EGM6V$#;;JUD9N?N>H91QX":QJP" M0U.5 :-E@7*>(L-G7!>(YOP1IEW0FPLL_OIZ@800HZR*/N'H,52OBTYNK-(& M7FX#]CSH4V%#)Q?$"L@<:Q^?&DAB2;V>P*&D@_I5]-#H!A@PNDAOZO:G[JB.7JC: \>65E4;MP"/ M&P/&A7:9!]C\J]"V>@HCJRG'BTV?+I+3&+ZD4E*?:-L:Z48$N(N;&>5HTZ0# M!<#!8*A(G^T47J!15#]OW%)A8V'&U>[V"A_M(A)ZBD-+QVV >WZC2E7'KC4 M[+?-/?^7Y6I0%,[^/[7K-J1!]8;P?9!B:Q]O)"11(RF]4$W4^XOFH[XE_DY MXE]T'/$O,W+$8UF'<,2_0''$[S4=\?OY.>+W.H[X_8P<\5C6(1SQ>[N.V+1> M<=URSJNM#W 'U5*Y;1WJ>@:GO?3D'GH]ZMKRD:\FK5FP?0H\'%4^ZV T2?<9 M^KG*$&TNW]1W9MZO5&'80%@(A/__V[N^W[9Q&/RO\'$#,MQZ>3K@<$#2IMB M[MKK"MSC0;'E6)AC=_Z1-O_]B93MQ)FMI+8UL%1*'Y?2(JF:2G#V?:O M#_/@Y=QDX$,5OD_&=D<&;R;C3%7K5&EY%R7);,-$@!7TI^@Z6J^C\&L:.=_\ M*)":)C0CI352UKMQ1F<9#ICJE]L3LMGO:^P\G?0SD]'FNB M%(!]#2:0ZS!T/\;II,U9(IS.U!=2+L;9*K2TBF?M9SZ.4 M!;KU? AZ1$Y/0/1\@&4=?,L"2![Q3$7O2PHB!]1T6JDO(I <8AE@9;8]F)BD MZ#";#@L/(\[=,@G MC?R @ES(E8-][89Z(\4"7G M6[ 8#]1,'GA,].K:5XU/8GE\[(?4RB$#1F>P.&[V!+2MKQ?JH+?O*P0[C:!0 MJ=BMNE2*3B[-U<(N'154!^WG[4CJ?%LO0-/AV.^,E@>&,]"]'R5ZG,[BD'$. MU&WC1U/,&+!-M![MT;WI3OC:*)U1OT?=L>^,SBT,[E778-LV;%='%0WT>AXF MY/8/$J/^E"KM-RRW[!/@5I+)YN$6V_,I6K=.\^AN=]YTMSML U?']>WN2*^7 M0?&6NXEI(@VF7GPDJ;7C+,XH&C5;9V8ET*!I Y:/#U$**?2%#Z;1X_,/@]@ MZDPT'SHB*SW4V)BAHN0ARWPU0+7U/=WX\1ELMW57! MZJMV#6/'9;":2EW=P/$8JJGJW ])0(=RW$O@AF1T'_^8?B3#PRO_7EL M%7.J^.%KFS4AS)]OH[DU"Q,'WD@N*?V7*BU30/B+#5?4T2AA7>5 M-; 3N)&341=2S7N&QJ"U/EZ%YH9R0)J?B@4@$(#4"J4^X@T.%=OP>-" M^3(;C&9>BJ_Q&8I%ITL;62AZ(TVZ2'2BJ!$&HKH^A@=\1U4VE\!W?/+6L&ZBU'M/.=(MTA\8']#^-412__;+\[9T<$;BJBI'Z')_QX[T"]0'\+>\C\(X!KB;X MP_Q>F@@.=-%,HC"W%*^TE*1J*<[.4MS24GPF;6+)>0CQGLV@U$:[P0\]93O? M<]OARG:4X4R5CC\83X=,\88OT\^AU(6T+FZJDB=ZD9IO>,Q6_!'7G9GC\$1> MEW^CV)7KT"UG:1;S3V+ER]_QWGO$)M$ZNS,_A\(O= MWE==*RD6>Q0[QRAF)<6LI-@K*/:18JXHC@\I_O.W'1TR^_@F+Q:7_6W3X'W6?-TT_ST__[C?_Z/O_ZOSY__ZV9VWS,37_=6SC;K6;W'H#KFI;5NW%-8P5ZO4'_-UCH;Z>]SY_C,FXT M#^9Q[%Y8V,EO@]TOH[@\Q_Y+;S#XT\/NY0/L()+ MDY[4,NU??T'_\PP_VH-0;>\O;Y[YMT]KW]_^Y+JC\[[-)MNY0/H9F_Z8[FR_H]R]L M187XF(SVI2JVN0]EBFHR8YD&DN^-9B$+SM< ^!XC1*X2Y43Z MI+DPW1KXIJY9XF$?%"^-#7:_>M/ER-EL7;"&:^LYQ7,?T!IN0&D=^:GFXY7N""J;O2 M;//?82<,.^;I%KCAGV.I:C8KZWQ%MH)U!G0T_.BZ$\#QQUX]N8X-_ZA'7'#C MI!77$L878 >@#)HD8ROUG@=;F!Y93K/N3!L.'*9F[1K*K>9KW(A8BFP%ZRUP MS1?8)%[ KEH3.&]S@W(ZI!77$L9G?_ILF:NHZ9< =9"_%13W );(7_DD6RMU MAGWLQO1#[F'O^T-S3>W9@E,-'[C \\.9MUD"$VNQ[?0>8!6O++X"9^5JVS6: M9I98JO"4V K2:,JXT-Y*4)C)VTKMQYIKPY'2>P+N? U7!.,M/XK",EIJ:>&X M#V"76ZI!97*W-.H^>^!? 13Z^*74V),O0-)9[!.BB:=H"6>UI7&S%MOJ M++<"NL,"6L6Q0&-I>11)=DEG[B71L1A*'$ M5I%^!384IB40*:%$26>CL18]I$SS!8UO96U0Z5N26@<=PVWCV4XXI4/'<["? ME:6SKN6Y):YZOC& AR?3;)?4%22\!_-7UP;[X 8P)3V2L3 M=M1#SP.^]]5U/ ]*/XB./2#+P09V-CXPTNVA/A.*JYIZMD_#@$M2TS%:L3.A M&I+:]!!!?6;#?DE:R\#UAPX\."'SX(I57\.&LP#ZVG8L9_4.9VF6YGFA9VJ= M-N.N@Z36O(5K ,O9@E3UZS,;Z6,2>G&4-01CJ3+L>*.-#<(O[X?,1> M17]]T/S #8>$Z3+\%P%;-N4_)(]=PB7^K;E< A? +DBH*7!EMX@^FO&"NC7! M_QE9;")4#TPE2^S!/(:%.N\ W, 9U]+TG^ H75H8 KXHL:5P_UZOM:A?E=-' M2-QA<)5/R6F;D$HO2C77K KG*>6_)*=E=EM5T^7>]Z,^X1"_)JF%X@35=J3+ M?45.B\"DVFKE@FAW9+J,72IJLPWM>W):"0>F+BO1OB>GE4:.C?RLHJY@9GJ_ M:K,/_DMMWX?ZH5E!Y(!GP16O5F&"S%9HVWB_P\JXL"XV_-M3O&U>NF=E+K=M MU+L_QMLY\61< &Y:R6TC'[]I&[AF$T5S87&R>+"CDZ# K]33,Y8J"^(A7!X9 MIA6@H[\YT.--"8'@*1^0XOYA^>-C3#GJ5W6!%E?UUS?]&0&5=GS-:J#2J<]4 MJK0OIJY^OIY^MGI;%WAHMQ_U:_>PW+ATE)_2@-@B#P=G@_/SRO-^_O#I/52ZMA:&;K:CFZDG9\(\Y>63-'Z?X ML@T#=WW6UZ:U8WWI.IN(O.8PU=EP#N'_[-/C4"SQ8#V<;'4 V9.=_!)KK M ]=ZGX&MXQXR3TBIEO59*A\3<=(.$0M7LZ,E!I6)PZ1J4<%4^YB+TW:XB+Q; MQ[9Q"\=! A&9=&JQ0*]Z3,%9LQ1$ ^2=:8''8/,,W +K'R91P_!,M8YM?MZ& MS6=@9:*JV_ZCMBE2?5$RE6S/4//8_A=MV!_M2+BP0]P?;(S0E0;W?>08>#J( MN51BAQ](3-9E&V0MM+>) <'NW%8IO14FO4H$\4"(J;EJ@YJA84"[>?%_X#(0 M#+"T%*15B1+6ZL=T7,M!QPD''2=JTU%<_63%UV^1CQ'\X]1=.*\VC8U]RBR8 M0?_R_$IV+BB53YAH>/&=J>*3X_F:]=_FECC.%R56D ]Z_1-*&EZ&9VH93C^F M[I/KO)C1TPE$4@Z2*T@+"X*$F(;7Y*@%#UV@85I'^FZ%$0 MZVGMV/B5]V$2-0S.5.O$Z TOO>/SQ_?!R?,"G2 4&/TPB1I&9ZIU8O2&U]L+ M5T// LW?-\^.56#QS.]JF)M>Y<36#2^7$QV,W_2U9J\ 9F^I*%D&QL5)_Z)_ M+:'EF6N>$-#*HCB.LQ;MN".A0,,%'G9B4YQ<#4*X$23$M+(\#OV[(0KS!:#+ M_7&U"=M]1W4NR,X+5XY[COQ%&*72B4:Z!5/K-_*VGB^ MT2SK)O!,&ZY.L-;/I%+)^O2*)]9O91D\W@!W!3O-KZ[SZJ_W;Q45LU"86B4V MV $DK#2\!HY%LP:612,CG4@E#JCU3DS?RGDTNNB'3J4<_5?H1>I- Q^]+XGF MW/A)%"%3%N(IG**?2$L--XZ$JH;7TO%48A^'&>_ @4NJ!BU;8M&K0P5?]A(^&U^'92B+1L+&Q2ZDB%^3*)TRTLR 'Z.J8 M-;$-\/:? #^>'Z13@P7VJB<<-+SV'D*-&*%.+*UH ,_\KH;-Z55.?"IQR^F_ M?CGTGZ_H5<_W&'3*;ECG^D$?.=?ORH5_'DT?;\>/\_$M^M-\>C^Y'2[@7VZ& M]\/'T;@W_S8>+^:?FO"Q7VK>:=HVDAZP?"_YE[T&XW_XF;J_OHMR MF-PTQ#CCLV6IT'K*X(@#Q!;7N#A15J)G_:M^2ZV*AP/4V#C@8%W[(;PE@).X MZ"(3H?IAW:WT)9>&.8WGFDS4'J25AF$.QG TLT 3Q+:?NRO6&.4H2!IZE 7^ M!T7"?]$L@$+;^"/-==_A:@_= 3]<3G'EE502+.SFE5$><0U*V<)5!SJ&"ITN MF^XI!9[O;. 4%MF3 M*A&&G)U22EF\V*M2(@0S:%PP4W\-W'UK.=RAP"7KE!28P&'O9RDSW7ARP58S MC3C*"'HM#N'.& [#/D/.3@FB+%[L?3)E-,*BAN[RSLQP?G>?D^%P%G M"US_'441#0,OI-[@2H=FG9FK-5RC?_>B)U:&2ZC*U%L_MP BAFOWD%D[\_0/ MMA.I^\.2:I&[\VG%3K5.A)N?UR1O@&'$F/S<#'A4_:.]KW9SM"S2:6 M61,L).)/4!EP=D(!;@"KF3,:7@3%Z3NI PZH->P>-BR%Y'K8R-D\Q^'IT1$Q M7!A''I6>:<0OWB0F>2=KI7R!W1.38%L(VM)\ >ZS(\5JI,@9@5%F+%F[)ZC2 MJ&O=]6S^F./1\0';_*4@9?=DP0JRUNW,YE60/A9D[#9(6;(FN^A?7@P4UP4W M6O7W.[,'0HRJ(&?JGBY*X.W8/BCSTH>V$.B"'!@QJK]O6F(^3CTGJU2FS%H2 ML;@:'ZXD*DG9=/\R8.^;M4SAQHW9%E%Q=%TL9 M^!WS!L),[.C.'K1\7==..0,(6D_+LR$7>L:D3,OF)528H?.*X4->P\I:DO43 M?>&4-%U//V$'%V7 R]T M4>OJ]C;=N#V06&W^J:.,-IZ2BH;(2;$="E)*IP9.^O+\LX(4Y&22 MG5JV,&K$(1V),3T.DG6/=":$@G:V6F5\:!AF5.TGS30F]DC;FG#2DL*/\S"B M9NR>*DIBKF&KJWGWL^2Z9KB*0@%Y7; &MF>^@,@O_][QD$O^=+G0WO!.:3RE M=% _ @Q V/]J+YK+#/B::0-CK+DVG#I[F>N]2U,W<=-*>L:L$:[Z5_T+Q550 M$K/Z,1OREF->;'1/!8P8U8_C0%N.E;SR(ITBZMNB8L>/?T&TJES:# +[%-I^ M#7Q3UW97HZD18<_+1(3M_2GSL3]_^H@0VUZ,0%IP48:LTO02I:/)E@79@3LO MEN6\HE[@SG%OG>#97P96WAR4>S \94@CELKD%^BHLB%J#4[:O"MR=ELO>@%T MNHP>,H%C0+CKDP14NS4]W7*\ /Y$Z9,JEBJ- LMV5W7@5__*5M8JT Y3-S2P M$=KC";BA@9@DA%W#I*,KPH2$6@W0L5G,1>OS+>(RY/I3$;)6.W1U- MG:^)FJ=7*5(:(9:=I L'K_X!9\HDG--SAIS2"*8V 1 UQF66CLW*"JQ'@2 M>\+Z-N=\ ?_S,'YP516%)]H%VD816>'_&7B/OA(E2=.=4#C+>FR)@:G^F>S(\>!J M,[8'=8U=D%9%^MF!J']4A;#>FB[0??C]?>D%U*9224,J/V/%;-.PU;I*Y;X; M^FH9=LAD__JT'[*)_B4VPCQXUN,^RW'GP'TQ]="C+)XA(9PHX>&MP!(E9"QU MV>]?7IRIIP)1N+O1$^RLQ]+%=X)_=F2B5HWM>>;N0BC$[P?2-LVQZ:5AGF-0 MYP/3^@XWIH\/ARC8)\U >'\@QK*;D(8KV!LM7-=MT$]%[]Z5+T@:WLN1>M#K MBS.!^O/\J:X'6\W6W_'/SJ23=$8(S.!JW6=N/CI(N,M%ZRC(B3NG 0Z8K0\/ ME07 _TPJZ[N=79 "+U;UW^ .%SES8%GHP3U@0_-9"+BQ,6T3F>3FV=P.6C@MV+T,#;_P�J1F[;FOD_@:!Z&^47'>$ZX&DMZ8^Q( M5=L7I5$EQURG:7.HOPK:62)NF3=P];_$AK_"I%97*FQ0!(57;C5P(IRU41>Z MF30JDDH'H/X30P6>K4D /OHE,EI.%4DO"TO]R,>DH(PCS5O?6<[K-V"LP%?- MM-$_#I>PMC.@6YKGF4M33PX(\!ZS(C\AC;BJ*@>S *K33+5$:V[YU@?.]OS= M5X>5Q8M:U+HZ-<"U*9,DZ&AR"?/6M (?&)21CI(K:[B3_L5)2\%G.$:Y,I"$ MA5=L;X@[A'VC>:;.R'J85AJNJQ!)EP,>:\>V93'FX^L(CD04)+0=NWC\.S!7 M:V0Q.,/15B![T3)U&Y(RN-_?)\L_O@DZQ7X5# JYL?E&/,T_DQ%7*L%X6WO;*)LBSAM M[^E4+A:RSU%0\6 'D;;XB5"A#1W'1BUT^&;B3F*(>:1ACX,, H/,$&4A-'IR MX0&@40?#7SJ)O'0Q6S[/'A6@H"F-.+8K2=E("[$BQKI9MK>;NH71#?U':$FZ74%X&2ZW;R+@$30?;F?_#0M;.%R._V(*ETYR(I13U&759BQ!,MT"UW30YKWK2W"8+CZ* M=W>UQ8->T)A($LMY.]U;[:6\PY ]*Y"X.IK:/QVZ761PY:B'E':H("5$7.%9*Q0HG1:K*<+ M%&VAJCOHUY$D;;!"=[ N?]>RR+!J,T* MTB"E,.E$*$XNG#/%4EJL9[;8_(9@:B!:.!AOH=!,SX>#Q0S ?L$S?1"_7A*9 M= 9T9V6'I83,T:>4M7Q6.G77/N]LSHR" NS(LEZJ&&OGO']YWLDM;#IF4>%Y M)+F52@H+0HEVP9+U2&13VA2"(OS($S1%.9>"SFJR1F.)BMH1'1./[?P"N1,> M!9V5%@]Z4=?P\5K9K1_:?,PYCJ"UFTM1[J^>E7S">3C_UKN[G_X^_Z3 K=6= M4>B750N2-C\C1I5XZY98+J$=H66]-^1WV=X)7"+R,"H MBRWSA\B$6*RJOW>ANX60Y\!#,WFP-G>.>^L$S_XRL(:Z[@30P,D::;+9YJ=J MG+D_A"3&9%WSJ!7]BO1Q*JN$A6JXSU]!2)C>"38,-YDGWFFF&YY?I^P;O2^T MBG8P/6A+MT@_58KZ4%<-]A/U:),D9\SY0XB=K6-W#07D!9@OA-B4+%FEDUY%_ED$Q6B%6KRI6U&.EN@9CU%- M3#:08-NA!MT\N6"KF4:RYY<\C&M'H>W")L6N)9;"CE%?I>U2=8-"3LV%J/=3 M5CZ-%64^1DTQVZ&6FY*M:RB93#YI[Z6FXG&^8U0.BPEJV%2003)N "MN:L^F M%:Z1>51SD/5(A<-BA1INO[2NG:+U1F*']TI+N%TIQZ@H?H/(=:,&L].>!SI# M+_Q,E]_AK*]HNL.8J[L2J6* JM=B**O[YF^(Y5#5Q'X!G@B?=4)!TJA,D,\Z+U3UO:/@6B&Y0ZW_*S!=D/'7&=H&S4.* MO8"L!:^@!<^E[))X19!75T6;=.&@!"+6 3"\.VCQ D M:0//"\=S+XP2@W'E"JT0C?]%>P&E"I)&%8+9/M@F$&>;F@/W-;]S, /;>$XY M73XZ/J ]3GPE$> M8L!>LL.F/TZYT$W0L0LHZ=Z412_8],>C%SX3U!SUNOF5>61 <(^.>YY<$]IR MBX(S1A;!J(:8)VNVZ_[E>(13SA3J>W7D M<),>42I.?,0BP>.OP26CI=.M.\>%XW'\X--T&;I81F'O**=:^(Q'I)ARMJC9 M>T/4Y=ET>T@ZRNFR*#"Z-[2-[[99[.-3HICN*TBH92J'&Y5N4X_=WI7/%[JO M-4$V$16HM,7C*P0?_7_4-[]H%@AO9B:M#?T FUGV'U(IHV#X>8>].&;P^ WV M_O8*S& 3&B^7 'OTU6PE,E1>]?M7@VLUCLTD,).HK2I%!5^'?H]3CB1U50V@ MDG]*^D-C.6NW%&6\;9$-A-UJ.HPNWG28IV"[M4)+:M8NR)6]=-Q-1"/9V80Q MM[)]4Q5\ZN]Q)2\QH/>-'@G!)3*II.%:!(=Y1;"@K?7-LE;B0T2A.Z/W+4E* M.$S8>3$P :[5 ;:%]TIBNZ%G6^ ?]SZ:ME&PXKTU/=URO, %E+&D:K'2:*W, MW$0X]!H <*"[1R)N8Y5?&7, MTLQH+/Q%J+V-INY*L^.P_"CLSS9V4$;>/K =:O;N@)'X%-2@#_]?[W-O7S#\ MRW3V=?@X^>_A8C)][ T?;WO3I_$L_%OX"M3BV[@WFCX\#1__^"3K,U!I\^P? MS8IL]92R_G09*U&S]N]I8>8H@LIL>@2M4NN]+!900#>PAK]PHZC@STC3F0E5 M4F;,;,)BM3W.46/7AL+FV7X<4P@]%^DZ-ORC#C(N?)1N[23?K3QZ^]I]GT$?YY%+UP)VUG]@A><=: 6AF%9RW>+@I3F"9TWK.P]\2$ ME-CXH77I.M,Z+Q%%9YO?2?_B]*2=#DN@6K+'VS792,TNZ@78 6#MC$Z+.J,? MX\?O8WD[G1@B;6[!F:O&,,UW%5-UHO0!/$=+T!'P9PO9M_E7GSL#9*R M YSQH>U2B4U_B0D=UUIO4>5(J7I302H(?LPI&";J-GE//NI?6O&/N:B MJ(^Y6?2F-_>3K]%FK<1]RK//T%T4)VJ\)TA7@][("U-+U'Y)EL\V378D*K:Z M\+B(M;%=YAO;_7@XEWCY'L'#-*W#'X7<9[H'G@? /OII5<*C8FL:.9N-Z2?#]P_--5%$D\1/;FS[F=M$E-9VE6]MH^G# MPV01SI3#$\D?P]ED>',_AE/HQ7@VGB]Z\*?)8E)?B\2H/@6<.J)1TC;M@U!4 M&]KX1LXD3?-D8B7C0\"/2\5F.@]Q?"_))[%[I!2 MQU9BRK9\Y=F;)2F+-.V1@8U"Q_@NM\6QYMJPNT%78L/7W<=;UC99X'@W'LX> M)X]?Y[VG\:PW_S:/'48T+RNI;/,BY?@?X';?7 M@TO5<-.[!RO->M!\I ?D,)1FBM8,F?)*TR0IO*1;9'E@*K;.>?#L@7\%L)3Q M"_MIZJ# >VK^_68^_L=WM-Y$?E02'Y\>8L:M++')&G>3R%:$[A.!22]-?B$@V?_I/S]D=Z?DJ_).\?]N$JR=P?S3*B3E(LO M(B\2S#NMHV#++$VO4=NUCPIVJ*V_:3 XLZ=K5A0^"J.3=)+NJX&*5OV'_KZC MJ(MCSS5)?DY)N[RGPDSRXQX?Q0H\\TG>8K(M[;Q_==;2A>+F[^>QVT/% M%6UR%X^SCSDMZF.B.WDJ]"4):O(]O/9:.>46&5L;YRM$FA:.XX;CEEV#C?4% MN,].\\UU@1P$V1KK*6RLI_C&&I4D?5.5XR8M9E(_U]? "-"SSC?O"Y@[C(2* M7&F0;6/?FM#.Q(D^?RFRM5F>"[,B(:LX\-+OS7*U\;-\&V>Z/2M_!]"E:[38 M5]]I8SD]HS1]0?DKLR5!JK^QN^\&X2+$#6"%3>W9M$*O?^*XP5] UH(7T()G MJLFD(ECU]X3W!OCJ. 8:8]CUDS?N#]D_'':%HH3P=2;F".Z4GH490<6/ZX'8UUY3T(C\E M/;QC+?_L4Z7+UGO=H@IQ3ASR6:1IR>S7KKGAJ+ARC&_!\C3%RWQ3C&Y@R]\ M:[R*+:9N(\=C:VN8U-(T,_RM[#((6E^5$2_:IR<'R)$/16!/7>2<+E.-C.'N M?:GB%""^%HBM+\#((1@.@$&LE!=/>,4BZ@MJZ:=6U.JOZ YB7H3(DWT-N,+P M Q0:W/59HT39\KH(5 K*VO M9*IO8IF>MEJY8!7/J^+C>J9!@BFODAHICPR[@FDC8 )/USX8Y+MV7-@$^;MS MU>(G[#NEPRJA:TTZ'+UO32OP@<&Y==%22.GZ MR,\+C-,XK!*WX7,O^G O_/+'.%F][)_5>B,/Z+^M MG)8!TAROTO7NPBS\;Y380,MJ ^QQ&V;>*Z? M4CS\VYYG^)>?,W2!-A#UI=!1J$O8 T,B&HRSZ51K2Z"04 M$$; @*6L >L_F+:Y"398^V=^EX\!0KVR'-!QM,J"]D9F(?V[RBQ0<5!V9NN< M'+RGMC[@A!5,X/!Y.(J0$TO##.^P4@*6("<@@>-,R4!,MT&TJ,">L>>3RL7*5>5*>>L^R%M?H\N/Y8A I8()TV'Q[,#KQ LZ;(L\Z-8F^BMENT2F7) MDFVWU_W+\],N+%Q/B_HM;CO(MS2J+I2"E2Y##NEDPLTELQRP<+NHAEMGHYFX MF0PQCRJ*P-+)+ @"WC8E00XW6+@RS"=0A44"!WL>&>&I[]V%,1)N#@<1-NC8&7L2 M00&M$$T73:/1@QR8+J0X<=>D4@*MH"XC&URN35GL,4^7]XZ]"D,A1 $0O@'+ MN'/<[QYNPT M\=2-JEQ88])F5Z4RI>N3F@]^7-)(2F^.#(U_!E[TFC7LGDDVQV^><96ADLY* M"B(ONNH64EID*-KI=#DTHEH7[L^0DF8,HS1@I352MD.F[0%6+E-'^:;\-V#7:.TO?H(\CL^/,, M0@YI:"W-4<&I/2=)\]FAN/YT^5< MLX!'/"+(I5.%10('!5L)3"C;O*/+'UA !FXJ]*5T8(2MFJ37%'2CJI88 FWR M0S=N 1&2MHSRM]>E8(!0KRP'=!QJ1G)0C 4JCCIB"%1]^)1ABHY++@U7 N?G M7%@)CK3M+<&*$!!GYO@,TA',Q0X;N?5/R#$W;>*#* \Y,YLO2**/P(^OT>-O MU=%S*4$:TQ2\"F!9%E.8+NF>XCY#RR8=R0*ZWE*8":^ME.Z",0WV";AZ>-MB MX?B:%=<.A>=P30\8* Q'?+GK][6IK^':TPH,, ?0=G#]^;1&KXM,W7'T+-$A M[^(_H(I"R/0>= ;U6ZC60Q112H0%.^[0-N+'9\=O6V![8/R&X(:.#8[^ZP:" M-9!IX$]%883*%]1)98FS1,TW],Y$33\L*QZ+I\L[38]?.4>[7=["N35=H/OA M7_:-*C9KX:RD;&&=U))8:S1S6Z^BFF( L&->@^CX>^@-[>$*6KM(+X3DG50$ M+]X:WI!K,08H(9WYPK& MHSH?H4L]YYF/QG6K^5I^EW>3Q^'C: +_-%\, M%^&_]FZ'BR%,EWRZM_^V OXDZ45Y/.?9H\>Y +)F$K/<R"[UD##FE([L297D% ME#6!].2CVA-/4!ER2D=^6;8X>*>@EX7WN\"U31_V;[#N=^8;^A/9\1&?01V6 M*=SD6>8$7>_9.=J$#^ L])OF&J]:6*>YL_31'TD!:2F9.LA>!>"R."L5SNB) M[9.0HX,4ET6-/5<0<[P4^,[&>38MX"W<0/_EA=T&L/8 "3XNC'D[2&9U_-BC M UEF4_<4UQ=ZQBSNL_[%Q=5Q3*3)%JAMQT 8@",>ZF;E:^]/E=P^$46]OP-)QT69HL G"C8OA!EW-_C?Y#:UR MQ75754(MTDS$E/:[IW!\9K?;+8#X=3-Y;8A!IPU\N;N2;LMXHAQWD*NCNNIO M0_.0/5W/7ES1CV/V,"X5MW.YH% BJ*U&1'CW #9)0(%#R25= M#\=N_GRG5@9KQP+)D?KN2HM\?-=^WK^XE")Z"1_Q7 MZ*GKE(\HQ.0Z[ <1A M:L_Q/0W>,>NL@N,P^G0O]>V/82A4MJA;*;&%Y\&SOG.:#V_>%)XZX1)+US&P M6_'P8(D+HOJ[Q5-_'4[L#UIX?'L+.U MG'< 4&15M,@W[57A@%Z4KA-4\J&KX?9?PPWX=\?]!;^>[L"2T>J=W)P9[MF; -W]8[W MST__+A\!5.,=+J1H:%K?!\72M((* RY<^:'X,($5/FH'W!=3QUQ@8\W6!5++ M@6Q]>[-R%YJ,'O>4:Q:Y=/*17FE$9,,G]FG<-H?.!._,L:P[QWW57-S[MP4I MI>.>C3T\ZS1LM9YL-S\]3F!3&)>69AI=>*+K9'<+QP_'@#,ZUU>:XT$'21X( MZ[LCEL=VWNOX5(K]*_BOI@_NS1=@3& J.+&!@V#HO^.%-[V&FS#Z$W)4+;Z: MP[OQ=5%VXRNJZ6<+5;6WKVLOJBS:&4/U[<45#CTU4U7.^F5^[)VAS9P6-EIV MDRZ"[MBVTV@%9%OU9?_B4@TOS>(U>S784C[S1T!R\_Z@_=-Q1Y;FD;;@.$J0 M3@T5&Q1_&H;<@QDSA+D4X>5=GDT@>S1631R!358^H^N8X1 M12V^T?1?EK,BQFTA9U)) %Y#I,=";%,L&4)NO3H MH,L'6^"#XV SN:]_"6")EM M2JXCH;R,%60)SY0\21^N2G/A)UV2L2253KV MFURYD:T@]GA)'MF0XG'1LDDGE]+L<@D%C[UU_X(ZE<(=CXNSH"-5$X\UNOGH M \DX*8L\A:<[O$<@E[4=@60..:+*?9QUA-OJY\=SUG'5O[IH^5"6G11Q9QTQ M;$'CG723HKK/1"10347F!9Z)=%Q+31VD2*"IJA(0?)#2!6'5?OHBMVR82:YV M^M(%I0@YLNFL&IA@*[W'4]LY3V$SVE%' X=#G=5)&2L(BKC1CEAJ M/%'JK$AX+2 HEH= @7BNGQ('_-M>&/ O/V?04D7/)F9^DXYL8V-S$+Z M]VSMK_M7YRV=4)5@@8I#%G^U1ET<6N2PC8U8LA647N#@47_WP#*P[LTE[NR' M):MTLBG-,H]@*/B/(*CTH6UYCY^ORAX_YT^ I1+K>AIV:V>"MT+$'-"9P MH%GB[9 S,;8_XBOF. 0FQ"H=>RJ3S="5AKUC$5=I6S3S_F3+$^TGU]&!Y\W@ MQR!3ZZ&=/F\!.MJ5-YK42RH51KK85ZN7KM?'!#UL#)>R M#8F1:^[$UEWT<-(MB/Y;;EPL+BO=9J_Z_?Y5VY[K[%1QCX$<%J@Z\V)]2;35 M?JO@<)BS@QKTRW90NV^GNZ2/7@A)^ZKQ7J@E%W25^IO":5%%V$K[[+7F@BZ% M:BHRS[4_P&2,KFJI&1=T*31550)-\,?N.UNIS!1;D>PNE##.T MC6_ 6)GV:JC#GZ('M7? *:OT2B4V/K])ZDI:G1^DRC:50?_J[+K=?D, A]F) M"QVNTA.5(GO-3.\78:U-RB*Q'O $DFAGA-@1#8SB1]07\&O$]3$IB\0:8&23 M) A&O+)$,(4S'@ M[L\T'\Q?M2UQL5J<6&(^&(!+W[OB[,/IA4FLA*J]>TGP2J\V"X 2.WUL>HEU49GAO'SXS"!+]S'2 MO/6=Y;S&M2=?8RU**QW)?#SD>61'*0N'>UG3-A$+4DK'7]7.FXQ,Z5L\>Y"/ M3E3OZ(DA*MO9Y!)33B:/1#L#Q([Y.J=W[M["3?8U^V.''C#?O9WT]0R=NNN919B9\,3DXOVF[() :R#9<-C=*[:O>.O8)= MQ0:!1?L3A-5X45(IZ64A+4\W,[Q.\4U<2ANG))S"8IY\/9F<4,/77P(W_S*Z#@ES=50,K6*6W5K.# M)7$C_C"A=,R7'_@9P76(::IC,2ZYY*QS#/Q<"-OL^%\MPP[Y[%^?]D-.T;_\ M',&/FOXN%.I)?W!=V)&3$TO.)X66/:LE4$K(Z0(.7$/+T6P\DP=)I.&O! $' M[+$@DY"S6V!I[\"X=;57A. > KC3=-,R_7<\B]1,'>*U'-8V!UL,T^&,$/5/ M>%X/DF21G?:OKL[5[5U9L'5HBD0_NBQ,+3GEY:?%9(2*'V.F@8XTUWU'/KCD MHTQ\%LDE0":2)@,&J)T[UHPJ'5U' "/'\[U'@!=&8>K.:8(=9=4Q@36N1*,[ MZ(MXBXFP;YXDZ1CU5&C*1S\Z/+Z.0P;I6ID3[!.6$^S,%X[C$/MG.^TVV1H> M!2YJ)D/;0,_*Q'\AXV#-+F5[+R: ?!S&#;([<3]5[^(KT5B^S^_*E"^--S8? M@PKBE,VXY!%OO$QZ0,"FI1DT1I?!S#'=)X7Q-=V^6<)IZR M3!/#;_3V'SF2F>*)R@Z/D-P+"8[4BLU*V^S!XU':$T:HRZ,D!+.01I[N$^%U MBN_*+H\2<,[,')UT D*E::_)Y5%"\@D,YNGG@ZFT H2YMTG >?E.GA%:A*#\CWP(?6G%!*TS M'!.75/F$TO',Q!:99 (RI2=O-YH7XB,.U-E$4M-+X"E/, ,NI;A*S];G0 ]@#:=9;N[A?TWMP;"D5*[2TJE=D=18DW@WSS"<_U4RJ#?]LK#/[EYTRS5T43 MQ,QOTC'./RNDXXFI.U.+NL)F?O"K-/3122@@K,S(WX#U'TS;W 0;K/TSO\O' M *%>60[H.%IE07LCLY#^/5O["Z58H.+ SG$:8&'WC.M[%VG6"U_GM@@Y,+^(5^\:FT^.]T1&O-VJ>92V#2J'(.MGXXR3LYKU^:!Q_+ MVO^R?W%^]J%/)B,)VK)51:1_U^Q <]\'\!N#FCO/U)<^Y%G*0H)V>531YA!6 MSCJI7YG[[WSHLH1]!*U:55'EWP/KO0%1[C[SH4E^\\22O#P224YUWX&SFG#@ M&-K&8@UDMT!L3:?9;6?-?#?KG5Q\:9;%1(E%)CGIJ ME^@#I'!]BJ8^)_7J,_6A#W&6,5"B3$GB^#4W\3QI<.6$^>B'8JL:*U&ODF=, ML5ML^&KT:*VY*X!^VAF*0Y*4DHY 9V4LD(A'Q;.?N!6-M*T)&]CX;0MLP_0# M2"6[;/!E=%\PG-@3J+DFC$N9$$G*?@\0Z'ZY6;OC Q@&RV\!%5]6 98(E')%-QRC4!F\AG1*) M$/")6I0\HDC^D$:9!,$8OFBFA?QC[P+;X!A\. K-&O2Z?W5YHJR:ZC%&HBXE M3P^*L(N8WG 6?*0JXS1(HC253@1N-,_TYK!^FC&UTQ>]PS@ P//Q(U^I@KJK MI"H&2-R3)=FE%WS_ 6N9P_UYWNP=$9,0V(F$)-E%%RRAI V%@2/0Y4(#MB8= ML;MB>YZ 5$"G9<0-/!&2))O>M=R\&3F;C>F'MY H"J)HX2.2:DJ\D1+2FY! M/P6NOM8\\.#8X!T%J'F&C<<&GC>TC7A*:/X; @ P3>HY'(Y)>,DO9$P]Z/>O M+BY5%%E3EDE$6/-6=HT/+H4PO:_ !JYF3>REXVY*/,AYV1\TJ$'-*T^&*+9P/] M\J$@W/--FIB@1["$1^J2H>OE-?>>,#HNN:CACL35)CUTXQ800<"@9B0N*1@@ MU"O+ 1V'FI&X!H/^U55+_K(E6*#BJ#425^41?C?[Y1KEB^?,;3)7?8"I@KC6 M!W3/6I+*= OGV+YIKT);S "*EI3\#1UH$15#RZR(<,BTX\13"GRM$60NI-#0 M&,XNX&I/!]/E-&J7SCA<_G%("5O&$2F*SP9'T3G9X%6SN'NE7:XC$@\-=:VA M7N202T'[0>8P;1X/J9ZV'32M%.64PZ6NM>P FV8R^P@A !C MR,PGS%H$3@9.6O9S9^,LSS4C-$%DOP#WV2GH84\;YSYZK2?J=F?HD9[I\KL' MP@%FN'%1RD"-KLM/^ MU44'),*"4=#& 4X6E^W-#&@S@LY03D8D:MT>WB/'TEO[E'SDV)YCF09R+KW1 M+*3Q^1H GW=Z?HJ=GJ>_T(L_T0N_H?I<'9>HX989CE/(N>[>U)Z1FZ>)5EIH ME4JI-SUC5OE7_:MK&=HR<79?$I38MTK:W'PYV.#.3F>85@ '>:0304F*::L# M%M@=>]DB:X#$G.^4?H.2ZUCTP@:\U@-':10S"ES$ I]@XDS2Z:4,SIPS!R/9Q4IR)OP-)Q <9&_%(D M%B>=!NN0#I= ^*9^N]?*I\LHE:E93XYG(L"A&[AG/EMPHHP]MQ)2]H5F$^ODK)(IQ1^@AE%0@+@,Z^:S+[XWZ4X@HN)$/UN(A!?. MI?:FI]:W.'E&X-#J%^=]F1QZ?@Z*FBH7F(Z-]-D#G]\!6F7!-5O\!$CN,CTN M*BMO,1+JA$,#M'.SDO@[)JWT"%A:6'R%=$U6 M!W_/C^P"K(TDY@AQ%MX_BC M97JL@F*Z)BTA^#M\X%I:6'R%=$U6 M WL]]6^WIH!DLI>1?Y'+L*0H5VY2HR M9HK.'382$U,B%X@E8:,P"C,^M80M]-!>^V98!DLST\[:V]L\V&ZM\$A(LT:: MM[ZSG-<*.Q$7V#:8_E /?:F'/M6E78F6+QPE[.UT/-1]\X7]WA%S_FQS&"#6 M90TJ4 U3UX(-8!YD)">6AFTQG-*F]$38M?;Y[88CV#VI%.&?VCQG$OC,G5=/ M!3-T+.AAVA)/KFGKYE:S*%T.,<]1:8<-?<<"'QYX)TV?T;OLP)C8XS=]C6)< MWSDNW[V3"B5V7FZB;=-,C,3:5T!9R-Z#Y@=N:.0X %S*=8IW-72)70WM/AK% M2?/@/^T_W'.6RTNBPP(;:(976I^!V5@QW2KZ[C M>;?F$B) 3^KP;HI>\6R*AM_J[3_6T5W0YH]>L$WE@-WA!CD?EMT/)18F7?>1 M)X5C9Y0?ZI%N2QW-H,.OB'J&G\H"DR3>"-$6WVTC=I0&QOA-ATDC>Y=1&ZZL M#^F5,U'G@B>)CX79>37Q&*'F5SJDT8NP\,PGI]!PU\>G'I(M!.U'2B\BP7&; MCU5*%',TL]U8^TH^[7$HU-/I&KNHCS]Y['Y.YXWW%T6A5+B\G-@+D*X'R1L_ MWQ%4A->QU7MAX)TRGDW\!4FGGHK*8)-:"9L2C2; MD+V4&'-_2(MDB([Y)#&9@N"+Q)S_0U5D4W3,\XC%& 2/(];L'ZHB6D()_R(: M0JI?$5TZ&5]6X0A] M-^@8Y4,Q1=4-/A8%U;C:'CF;C>F'T[ZA;?S07 C;VD6@&]M^:-SQ9FLY[P#< M !LL3?_)TFQ.UYZK_N!P%3Z:/CQ,%@_CQ\6\-WR\[?T8SB;#F_MQ;_*X&,_& M\T4/_C193,*5>E*#7ER%7EB'^I?GF!W3E-FHK[:P9&BXI[B%)K2!,7)LWS6? M Z0?9,\%XA[339"R2--'L'.3;O;@'0R$3 -J(B^B])YT-[, M3; 9VC;L--,_>D_ 3=9EY%>9!)2LBMA8E<(LO5"/^16PCX= M9[>&*>1H%%;% M'J(I:.;'BPR"N!3?D'D.=@A0P$V_17X*Q<;;LV=\,SAL")[QJ;+J %XT6^H9<2):1=W*I4I35_"RFQZ MRB >N5P;X97EEO2U>2M@M(3/(+U0JI.?%QBG.;H_3H6#M1>EFFL6[YSS.C_G M9!RFTA_NA5\^GE&*?R):O>;Z&AB!!9O28:528KAYCW\D.866*"G;MB[[5]CDHYECI$@/S&/+W)AVB+G0K9 IC^0"(/"8 M'PKX@2JM!4(WN=L-9IS[%&651AGU#1"5S:&T=^$,O [ '?0R.$Q )QB_6[Z MZU'@^VCU3X8P;G]C&[BK M=_S]^O3O\A% -=[>X&QH:M@[$D33"BH,N-$U"2^PHDE8>(NQ>%;*FJT+I)8# M*=<53[7.-630B43G&K0)E1KG&KICZZ9EAD#1+GQB.A3GV%LX^_DI,"A.0J7* MDD]A9750=+8ARB"UGFZ<'?-IF@2*$R>3&H[7FA!@&]?D8+WUR.!#VQAN4%O_ M=_A7C- (.8Y*4+QVJ'6^U7S/E5P)FM@Z;#_CMRVP/;2=YB1[I(\ -SRR9,V: M\!J:<-!=*94V2-49%R6X?O/ORT06N'<\+^FH33N !M@?M-\ . L!43K81P-T MY]35H"%,6W/?PTD)"O6,NGC'LL)I2V1,11KQB=M+Q;-5U&)L^THW0+(CG'E2E*NOZ$1 UM.ZH"9/EN M C3I72AD<>>JP2=/.OX(-.3[VD3R@93%C:=>G[S3?O_JM*7WT 50R@_T.'SRVJ2UQIE3>4,H?2.R MFB>?#%K@)PSK-4) **DGGQ0$4(V7<_JBH#ER3SY%22T'LN.>?.'(M!NN[!6: MA]QSNO01RY!..76.S94-H[277V1)C&BB'Z530W7*\C(@0.U^_ "85%NM7.3T M$#:OV#6,]YCDO.0Q2?;S*(Q 7($C.C%IWE\)0SKQK61"%OE[B92I\^V?&QJA M5TC:=O.G8$6.G#>:9WK3Y9-KZL@*^.4Z6V;I>.9FKFBGK31R165 7)NS9L\: M9-"_:MN[M0*/941!L((L&^L+

HJX'4O.I"#K!*+RO)= M7^]&SG?;]"&>^)41''FDI%VEC!NS+(E%!< M"!ZT?SIN ACG09)/)!U_%>92' @)VW."YTP4VM"#Z^B1PU2ML:X?V+32D,C! M0)8V/FCU#G;H81[@ZG#@Q8]RAVFD8H#/F =C&1.R>@GXZKP U\9[TA0GZ@X% M;- $320P'#P%SY:I?_=-"W:&>!8*DG6'!U9P1^(@H?;DH#Q@PN%*>_LK%1T< M)."2GP@N!X=&1JKR#@XR$$ U'K.# \W81^+@<-*_NFCY>=D2I)8#68.#0P/+ MK5VGDSZ&Q"R6L6FE([WBFID/*.&2;[-+YUCJZ4ICE\[8M-)PR4_$ 8E<".LX M'/" _MO*>?FB.X'MN^\1=?%?]LS%__#S^_R IOT/ MWU.\P&C9I"%?X)JC%&;"_?CVEAWRQ,:26!ID7O/R$&4*07W*"W"?'5( CC;] MQ'#N8YQ^8AK]X^XC+DGU$YL,]].7N M] [2/$258Y?D-%J<6)J6S_.<% >4YOP"FW!-D*!GYK ]GU,".V&"!M_FG1): MI(^#@5)."33VA&QA+YSM M@[! N8&#S Q<+:&Z/A"V68@ZT?[M>>]O%[VF7* MD8I)/E(.-KN%H6]]^X9-)H]P)2I )2S%=%8DI<&W?D)2NBL93'7?@;#Z@RH= MR6$I62.=]:]..J*0LM@%W=ILOA,IH0]Z(9V51TGH-033%>09!IXM9X2.-][G M^MIQ++A(]EV3="F EJ<[W)="6D,H7"%4WSO>T%X!"WBW -K,C][W_AU=2QG: MQI/S"EP\Y\R9NT-^-<@U1,"MN<'?.N[&A,6\#P-_':Y0PVW(Z?(1O/[AN+\@ MZ$H2:N;+W=%?B_:*Q7LIFW@94*'_EAC3Q)3<'?'5:(]87%=JBBL=%F9LF!XZ M*8Z;755U48L^-GF5,TBLKVO9]#5"IWC+L?7KJ^N\ ,)MI()TW6&>&5VR*==7 MUZDJ=\1P\[Z GR.'S,#ED$8"E0Y0R@)M[HIGI6-+^#%:) Q<#OGYI5#$20)#K[A_"";_'2S,,9" M/ -N67K^N0:7G;&7]B,@!\HI3*L JPQTY%EE!RO?DSSB;CT0]<"45SI]L!.; M%T5YQ%T62>SDN6MG54137)9T(BHO!&Y1<5A$:9'5'.)# M%4FE[R0VWN-G-S MP3TD8)&?B (RJ0AE#>YQT;^XN)+B%A'3;(X-C:PNKTT%]U"3U'(@6W==E26X MAP2DE[YUP@>QN>OFS8?U:)%%?B(.2.1"6&=8#\_?NA%OZ$\ISN#??HZ&A^Q$ M_RH7#URV3/% P-*:Q1__*++XXQ_=L3@&BRP!M'/]\CTE\@D^@S255), 4QJZ5HZ R?I=LT#2^F=U)U==A[QR$F1 ML(V*SR =YSPDYB7 ";2#*B!NO)*R2*<$3BY9Q4! J[0<1IIE+AW7-K4[%S:; MM>DAZ#>.YAID1SY:/D6$0>"U8 I8"K32^G@$KW]'$]#W6_/%]$QTNP!"#GDC MZH.:KXOZ* =::1_ _,!+VQ0@Y)!.$]6F%;Q(.R:$V[C2J$FAAYY':\U>P47E M<(/NPC&K@UQ,UI!7_?-^RQ%2>4EGD4T)$]0<&770N+X.;5"P)8&1%$/.#JJH M+&I!G1!5.,WL6WV',%T?CN#P;T^.9Z)2/=ZMJQ/*UM7N(SWXE=[N,\>V??6S M^4[AN^T"W5G9YK]#H=\ &RQ-W]M5\@E Z?HF\(:V,;%] +7E#W7=#8!!P2F@ M9.DZ%0IW^3ZD+B.(71&U.2I5L)!XX4DGN+KT(U2I=2JTO6#1J3%P]\?QVQ;8 M'HB-PSL*GE)&P>@SX1 8?ZCWI_A3?SZZH;#Y\UL,R[2Z9U-GV\)U_^Q:XB'K MA+A[RP"L2XU\_*9M3%LK-;\]H[3L=-E'UY*;?_PA)>&=W4GGLMCT2K7F0L<: M/FA*;[37=CHK$^],-)8_G^VN#@2=S\JD!38NJYS/=D$.<2BOT*$Z?ZH$5S-W ML#W9>G&HK'*%*"(9 N.%)W-5+:"TC,(E,)R;&H0!)9-&7A&4'$/HZ)0^?MO! M(XX4!ZFD(YE.$H'8K@X!$. ?0'-/^H-+8B^?2R$,1\V1,=-8?#-I^_E?80IX9 M;><$@1K!=]M CQSO_HU#&T79E9 )F68VJ3"#5WYG?ZRYMFFO/-C1SM?0WN.M M-W(VVR JE&^#?Y"_>S4>SAXGCU_GO:?QK#?_-IR->W\:/\W_'+[ENON, GO] MAW:B;/3CDS>^K>-' K]W/&_X HV,>M&% ZV_<>RY[^B_UHX%1>S=FE;@4]U5 M2I\4C)V85&,="H0RRQ%.2T.(1)V.#>:9^J5NYFPE..6 M54G[B(I$Y/B:I93P8I.+&N$^Q%?*0J*>Z)1$?K\#<[5&MGP!KK8"CP':>I@N MPZF%-PU\S]=LH^ %^@/U\18CG?AXIE5"P(K=K%-!0J2!DZL,Z<0C1!#E=48= M*[MSRPEVX&X8.$VSXFX[-,;0]UWS&2[+PPX]_#=H%& \:>\H\=!UT86P,-PH M?B^I8L''HLJ:+-74O:JVN\5X;I%C@:]CQ)62->V@?WG5\@WA9KM&+K-T;"9W M.(-AVQBCY)).3SSSM#+8Q)ZGR*0'TO2K,*WTW+/P25<%'FO'MK@PYN/K&(Y$ M%"2T-83";OWP;&C[IH$PFR]@#O0 5L8$G!=E!OF+X(1SM/07>_M/'L^96@O7 MP>?Z&AB!!:;+8K[';[H50&JC-U5VYYS3Y2$&TG4;L1^1OK\AWQ!OP!A*._95 MM,K->W$!!"_N&K\HG58;4%]>\DT;N(/ZI]YHHF633HE-BX)5EA23*:VM\$0+ MF1787FC7)TLC!R4DY,B:YZ1_=7$FHZ(H?!8,T)R0E59$Q59X3_'5%56\=%I3 M<1PE6U/IJP(5+4.,KRBD;.D$7*N6A$N78$3E'9?GP;,'_A7 4L8OZ"R,;XOE M-.^J//]^,Q__X_OX<=$;_X#_.U=@!^70")0=%'SRIF=4V8H0=T$*DDK7+=!X MR$R46 $I/4,Z1 D_17I'MSBU[#SCN:/33H+8->;)K^WBTDO//HE")@$0<'9) M N2E86/-.Z_**DTM/.T=\SXU-Z!7F(DMC3 M%R>6CG1FYNBD=[6#?W1\X#UI[Y&/XHUF_RI^#IR:7GKRN7IY/IA**P#99V+# M54X0.J7B^_E\0NDXK]#+,Z)3.KA %B/U2 V77#K:&;FCD4Y!V&8K?[4,.^2S M?WW:#SE%__)S!#]J^L.5"T(WGUX0R\.-8+;#&14>XTW;1,_YVX6"#FZ89.RD-5>B9Y#WP?W2Z* MT!)%4)14&N[+TU>P9< *5,+!XQ98VCLP;EWM=0'7S/>.9A-;.%LF:6BN/A24 MPQHS?:9D&_^AN29:0,\TG[3]>Y@L:XBS_G7_6ME- 29LG2&9N!F03R@=T4QL MD4DF(%-ZDP_=.T?XB"-U-I'4]!)XRA/,@$MIC3 <7)!'GCN*[SBK;6M"W\Q7]?K%TG6*UOX3SI][6IK^,YE6:%3VV% MX;"&MH&N0U@F>F#KUM'#N>X=Z:G M:]8_ LU%>_1AE*/3P0/D;PTK?'J@+E6JG57 >?_J:B"5RLE2/=A%4]7>[AID_-D[,I;Q$&XP)15+ 94LI0UX$'_QW^%P*#2.Z YL-ESC>XCH'VF"[# M@:=XQU?H)SJE[29LTTR<':$Z1+&DO#FLGV9,[?0Z?&+#:@#/CXY-Z6IC+*C# MFJIB 5&1_20)W,5HF %F2LF:O2MB$H);T#F'G!)*FE"XKXTC2:+D(HFM2@,L.DCZ]P!0%421PE=DU)5Z(+6PF5NO__U2\2E M&5T8_X__#U!+ P04 " #2FF-56<,D,R]:9>BRO8G_/[Y%#[U[^Y[[EJ'*D!$K3/T6Z=*)8"(O7][C!T1?__?I:XE?& [BFG\ M\Q_L)_J?!#!$4U(,^9__L+T2DOG/__WW_TO _ZW_2B3^_O\1)*$,\]U&0C)% M3P>&FQ!MP+M 2BP4=_H[T3,MBS<236#;BJ8E\K8BR6!["X;^A._XF4P@R+^' M#\SS#KS?-'[OVOW$'C^/X,3B9_XD2:>/*6S4T,L'U%!(F:*22JQ=\),BWB0$Q-D!2/3Q " M%5*(D$Z2B"BETND4$+.XP!\\"?[S]]2%A(7$-9S?CFO9__R8NJ[U^]>OI6!K M/QT@_I1-_U=X93V.']NFGH/(/&_M6T]X1_AIVO*O[86CQIIBJ/N6B\7BY_K9 M86L<19._PLL"I.NNN6AZAFL'IWNRO7CT_*6C'#U^D=P]'/LU;#88<0IT'E$, MQ^4-_R6[6VI7YN+NZ;*TD5@!XY>LNN08L#^@Y ;OUR;-YR):>N\ M"SD('X2E$#2#)+'=19VI*_X-7#\2HO ML.$Q?22@G&8!O'#<8<LM DX_C=4)-(O/%3-/4UC=!L$CT"G'(2<.0&<,J/ M?_^> E[Z]V\=N'Q"- T7JJU_?KA@Z?[:$">\&0%S3_'_^;&]CKB!!8?UZ]^_ M7<75P+]__]K]NWF68$K!OW]+BI]PW$ #__S0>5M6#,0UK=])U'+_@F_]!2\? MM9$4Q]+XX+=A&B!LH"Q_AT\#]N:C(DG 6'^$#4HV+X8$2GB&XG9#/++P \= M>DN\+7$L4^1*@C[LUK!T@.*&SM+C=AT/BIT?FS$N-W<5/7M-: Z#_P^IQ_5, M+LLET2 ; M90!;#K94:U(B[BU[#D*5)YE,?H%V,-P@ -H:0N> MXYHZL*FEJ'FAP0X)"?](/7YY1,-I>= <"@H@'(=6-22PK(-@T]V>R*4%D,0ZBQ&%TDVJ4"EI?$$S M%QQ\,!0JJ-J3:91([3N\[>!5^UOP;!MVMJ0X(J^- &]3AE2$4-AW.S 5HNFHU*2R@V1F*.2X6] M[20_LZ\YV%%IW5F-E_?]DR?C5%"H-FF*%K,*49HTAPK:X>$GAJ4-9F-*ZU=+U,!0%PU>UJ2&T7E9V[2 6X4QE@X:IN/D?%[1>$$#/;-@ MZKII,*XIJE-3@SZ!4U0T#\8\1[JF$:R&E6&975$>NIQ+.0OWL!34YFGR]JJ< M6^HK!)GWNNSPJ-XN6LF,$K@&M.%M"VA8;M M*N1P%!GZILB;7*SGP'\]NF0K"TRK=)HMU"-MIBIU))I'H47*H/A+!NF:A,%/ M *;ASDI#GG8!6TKBUT'A,@'*CB;EPC M0PH=%NB: $-4@',TU.I@AJ06[,Q%ZZPH$(4):3F"'$8EGS]&#.>26Y[W_3J? MK",%7 V .\J,RP8U*^7>.\@\R%FIPK*,4UXY55NQJ#FFQC<:Y%L9V;;!!$#G M1UJ#ML]KWG'PDY+JN*_7!RJ+9UMMUA@5H.-1H1T024;DWSA<"B:KK#2UI9-WAI+EX(?P] MY9F]#YPEQ0CS.@W .Z"KR%,8LL/@?!VL[R,U>K)II4#?TG24L"/4T@6&HT"- MW% <]V@PDM62Q!GTY51FAL[&A>PXE9>@ZGTIU_D_;=NT@.T&;8TW7*@)J+FG M6.&[X><7NIB;N,#.B=#[];0P;5P$E@U9L>8\O#.GF[:KK-9?W^#COE,4+D]* MJR8+:+:4;JN,3"'C?GEA399R5$GYFN@Z4]X&#M?.>Q._UC>;K#ZI("[>60J] MU>)]BO9![JJMTLNJB5F_G?;<,)$91OG'CI2O%#&-F(W0,F,RG)6=D33WD034 MFP=[!MPN-MJR4:]7Q&&^2=%I$Q\P=8;?FHJAZ)Z^ MU9T9?^39I+=*L_3 X) F\)FQ]D2(&F'F!= 0P7SH"FR0"G0>/FK[K0=L_9AW M"*B7D,DDQQ9D#8CM>L[&%KD?_[:QT>4"VYW!Z )7L=>B',I7"_;]P59TH"51 M)@J0"KPSI>WBEB$YVP[)$MZS)86H=36_66\M4'ZYHI@4*4W(_.(Q*>#]B@'6 M3I&M"%[8N?"=/7X9JA//>4%Q*"T.#!W9;@$(;DD2I YIC;'LI90KE<+Q)/'NM$.@=\@0MDN*"]0Q!U8#O MD$,\;^8*\D&3GYEV0>.=37)X=T\1^$"#1D[J 7%JF)HI!VMCMLL-LST#7R3I MP8 JN('97("5U"T=TS5UPG@_UX]-/@T&HW:H?HI@\^\1L;&\*M58V6RK2C\P M;+FC,^TR5*AA$'Y]4F]E:"M"^ &=;,6'3/!!U7"@QQ]JH*[BJ$?$A*,%$$9N M%QI]9L%;6QJ^] RG#-5QZ,3F@PJ09(B\+M#6S':FBG7T]% 3EC1SL6VW?;@P M<]TBVIMJ*IWA5VV[8_G^\A7@/W2D98:OXC7HDGC&L=ZKL4O=SX]S!17OJ VG M0N3\FJT6!-TD_54:AJ>+Y^!^B/>'+Z]9QP=Z"^X# MI1]L2Q%2.(!>F$,VZ0I7KXI%Y@@2-^0-H!I\T' MFUQ*GC=4Y]'MC"M@=@/5.X^Z9(X7?HYMF)]4C MR;J<0K5^/%'X^.;=XYS-[.WFJP1?MK0T152V8$E(BA[ZJ*;Q (47!O?CWW!T MOX]&]_>ODT_^=]>E?0=^G1JMM;;=^\ZZO.V&DX[K&3H$PQ 4WS]G?VU/-NF9 MIKLKN^^[E_PZXOC+ -BEQD/^/SB_[P1 69_W%^-JK<("O-QJ%_-XP'CR'0 O M P"R-/QS#@"P]?PS=GD H$< 0-\+ +R^<')D1B;5^HI%2BMR,"C[BSL 7@8 M>CX T(L#@-B&0FL5\/#E->=@8T)SL@W6"04]^OO(YREY3?Q'KHIAS]-=1TXO M%\\>P'?WY6;PG909\'S=] M/WRWB;Y]IN$%N#[,5_BFYH>5M$>Q=Q02"9W9;-%D&PR'XL1(G&4DA:XO8Z6R M#PJ+GR=R]*!_]HN?X>O#NT\R]I(BMUEWXCX$X7L7?'?EXS'8HYF)U])W:#%0 MT6)W,68]TDD[0MH)QDCD'&78[]_[4?SX-_QZ-(PKIE7.#JI@T^Q%O-(WZ,7K MFO&/*4074(BH6WZ!*B?917=J\%.R$#ED?24GX)MKPHW<9!ZGGS]=; AGP4]2 M"[:FEEOU"JFIQ*JBWX$?+>_W"(!HYB ?_E$ /JT*^'S%W:-6\_Y0*J",4RJ) M]E+K=)?W^"O*"#QT'3Z*P CD7X41-F9S8WO&@HZ2G?DS4NMH=P1&%H&/4JH? M16 $5+A$0GRYH>05L)GQV6P!W?!D0/CHWV@6V$!8;;VGU# M7A?+F1-[?V6] #LLGPNO[&;4^N/G!:!)!,V<.>=SV/3[">TC(SVU7+-;!H42R@P#">6F M8.RE[U(8;2G\-%MX0[$Z\JWQH]GQ_6IV1H2>%WSR?J9\]T/)M('(.X\]U^A) MX\=,:#W5R[G,TAVK/&9PDR%7]XEIY(0WG/L_R;)-6&?IQTDT.*NF,CN)TM8SG>XR3-".77;_KBN_A5T1#^)]._&^V M?-LCL&&*FPUHCM:4FXY+3QA>VV\&FZ=\MJ,&8X?EB5JKS3#+(:*#A0@5[I_<+?+H.>[4M.& ]CNN[#4T6-2 [8"@J/A* M2&AZ MNOG[Y%1RH5M,5@E.=11C2KO#BV!CM8YFWP*40[G%C0H>++]G0#YLJ3M@^;_+V+L<_JN8X MLRG6DNA\I39GQLH3*WADR]+/@A-(FM? M(H<(;(V(Y)DF!;WP%/*!_T'L/G\4$&F=Z369DM:DR%2RH/'9U%27(FM!H@B( M\WT,E+C(QAS/%2*?!X$N73;4)5!S.SY"-9S-3L MR(8E9^+@]%BO5&1YX3+?]_(W)TG*9L^Q-J](5:/ 6XK+:ULV:VD5;XB#K$_Q M9*//HFE_J(WB[A&\..1X<#O]N"#H0\*LEV6YYG (W[>R"!7PF9'F.&)?Z,9=9=](EJ_";%!<^7D'LUP6 M<,/D-(4 4[*N+H8W'3MQ43W&F'*G69\UBRK>P8R\NIJ+X^CN%191/4;F>*R]>ERCL?=6MU(CUV%V6R9 ,@TQYFJ)PP+#:V?KP;S MJR<-;CKV$_G]#VFRD@*FW9E) A1),95!";&K%?ZNR=[ X$N! MH[4K/,T6J/J@K4F(C):-<18;]%!$&B^T M%*(V!?6NU=_&7_229ON=_'U9J?=G=1,S^RT5U=D.5Q>(YH@>QEZR;Z/4(\'M MLW7Z(@@6>L50,NK<2B>G=( CJ7G=4?U8=3KL6";M(L]IJY?&-Y=]-CR^RS M%;J4R4R*@%52%%*HT\TA6Q\,)K%G_,T5^G5 ,+0GR@KM5364K)3-1=?S9XW) MU77Q3=2Y?J2"E:-5(EP M!IR+Q3T+\]G&[))[\;Z3O2\;,UM8>82F+766)X6N74626JL>>YUV&V,6!6:? M;R/>G[!T0UUDF2UP6$"\O92O 6\(C< >*.RUXC@LUH)WG'<6A)VU;"?>: M>-@/(3SS.%QF+NUNVJ+C";KRG@.=*,=A-@1S'AY!&3*\ @=AR/ ACJ>Y\!,# M;%\1]RNRYTDCK?4T+T\-,CXS+B'ZH>"SP'L[Y$^1?OOR M,VA_30FXY=*]2$D L.7=&5J# D(W!:M3I K<3.>77#N7GT=6K\8)Z@]$_DZ8 MWIPX-3/M'7L.@-?V!#A\UCUUAMN%-#FJ\PPRP&HN5R)KD=/ 487L7 T RMRWO&+@'U"H[N&_5HH/M"O+E8" M='WA"ZR^ZO;8QK3O]>EXN00W@^M=NS[&99BR ;:H[*G++;%)U M'>3F@IAJ&-$["?Y%M#XFT5VW?BD,'ZA6R].Q%0-: LOT-#0EJF60O?YRYB\! MUN^I6=^8\=HU[T$JYPRI"?MD0TXYU\W^IK6 (I(%L8S2R0K!5'BWM"I%3@6_ M-26V:_\R+>^Z^GM*Q8%2Y]K"W/,H;<*LKE<=,O)W@K\YZAXU_C?31(.=+V?D?/H MA*%Z%.T7[%PVX$:M4N1RSW&%_%W+?W166Q<[-C^>$("=5Q:#+F.M)NGHY>X^ M97;Z"R+EK3-LXQ;:;E<:@H&2(\M8%NBJW$0C9Z O-E/VS3C^-..?6XY*E5)Z M.D/KC 30 ;MLY*^_R]1%^7U^YOZ;@6BZCMI-KW:JH2O:5+ ME\DE?D%>7R>'D4RG9P/?*FH44Q=*M6FCB;'#[YZ*^X+H"35%&!>:FB*MVU6A M>WU<$EZ%#[.W8Z8T15>,PU-R"BN9S!)C#%619"_(5 6_UUY&+I )MBY0$'.04%[5&693FU3$[8!W) MZ!4]A!4CY\C'$>J?DT^,&J9OO**@MFJZRS*SH%D\P%VS:"PEIDO2T%OKO)EJ4ETG>(TZT7.V8@J9.]:]M-7%.0%+MWI4:Y/%;19 M<;+B&EAU$B_ ?L\5!=\(Q0?Z55HYF#OI"2Y;;GKR;+5@B+P9.0\WFG"]:]?/ M7E% I?-]W9O[)EMH%GO#18Z>]#/Q4J[?WZIZ_>4+*LX?FO> MZ&9]?Q@OU?JU5Q1$#941J)U^704O)HYFC.7<#.49?92E:OU*3XA<#B'>)=5W M71TMJ3A0ZB3AS[W:?5=XT=%$@YT?255KRW9L;^B>$IV,Z0RHCN5+U.Q=6O( M?T\M'T:>>_J4@2G;O#551%Y;8U T/BSU/GQ[Y8\OUGFKI>_#'8/%.X0:RWPM.(5*2!A5!&A:\QH&KG8 M,G(@_9Z:])+U07Z]S&G)0"^B9&M0PD$M+R)*["W]K=9F10TI;ZU5&"E#IUIO MIAKLO-P6\Z)GF_5L)&UE5-9FQ8GC3^=.YU@[VZXIJY)*7V=;'!^V#7\>K]*J<@2 M.#.0QAM2/7*.9_S69D4-/1]>FT6+[5&@(W*>K8M9M2DYG8X7O7U5(KTV*VJ8 MN'2VD0\FR&Q9525V7E\-BR/>P&@[9SFDINSWR"/,?3Q07 17'\W% /&KA>=&1KTU'(PRR_G MP(V]@HG"HJ3;97LW!VTGSY$ #,'02Y]I%2D).$@(I^;R(IAC=I?EEUQ6$ 8M M'LE$3H'&$>J?D#..(*9OO/XN@S:;+#^71%:W,3IK%8-JOQ>Y-'-4%S/=M?-G M(?E [=&;0+#YWX!)36\6$F+K<64B)P&CBID[UKVT]??=>2@DZM-9(DE%UIC M158'I4.MUQ4.JDT';G40R27--UUZZ=@^'#]G>47^<9\V4<5/6.C MV(2S+"]>T=877G\7051&8*71ZRK8T(!7QOLJH I#U](]:KXTZI'S;^.] .FN MJZ,E%8?K[Y*"T,TA15$MIW-IDNP:U67T:K7B#?^[]H_@^CMRS(V0=+$IL]ZJ M6:VM1L-":?5E@'_KQ4AWC1\523@\O6W:TZ;]HI)1>.L.6&A:0TGC&,' 5M-XO/C]>:M&8L;M M)SE(N=0H#T>@OF1!GZ6D7'(YE^AX,?O35HU$D-?7R6'X%"(.NST14Y&J5,T- M)_V&5?@R_NF-5HU$$#T?7C6R=.K=*C*:EE"]UUVX)I9/M:U(3O)&<]5(!#%Q MZ1BY1R@M*3<9C5"D5;"R2P%']6KD(!*;52,W10RV.0,J*O74K^<61[VR-!\9 M;ILJ(-DIR3$^BT9O7@(.$4!P@3$--TIHRH^='1?%@4KGXY<"!+5\NR[=K[! MB@*5*3&C!B8UT$!LFZ@)VK07LXK7+[^B($[8O/J* HHOEW&_G)I3@T%A8JNS M04.)WF&KT2S1OFO83U]1,$@3A6(S5YU19*.-8UB;JJ:L.USOVO5=N+SVB@+9 MH! !22UI*IA1J4(6H-IX$2]OX%NN*/@^&#Y0K=7F?,)1+J.I>J<'])+LDOEE MY)('D03K]]2L$:B=?ET%+ROD,,_RTP5%SI5JKSK29>U^I,E=5W]EJ3A0ZGS1 M27><#%ZF@F8%RTVS XGH1LY?CC?\[]H_BBL*A$";(QVEBJ-69K'P9 MX-^ZO/JN\:,B"8OGJV#U0N-2PZ8XHN8*QM%NK=#")6_+C MR"GVK22]8'H5KWDM)D9*V!F@7CQ M^U/79L6)VT]F<\AF1D7E?FJ)DOT*M;+!G&SV(NEC1&)M5M1X?9UL,,,8F60W M&!,4'4RGTY0R]]O16XT;O[5944//A]=F91LM?.%R08YE,+T["*1QDEA$TE1$ M=FU6U#!QZ6RC(I->L:.,%^J :(TG[;X\4ZPOHTMNL38K:H@Y_T2?D1"T 9.9LV ]+,/80W]DZ$)D M-<$9 W_P/U\>^26!HA@0#K M_N0TI]V5&_ ^YT%%:0J*!IR>[8FJ QN7%* ] MW+$KKW7F18[(SUE*62AT#?3-846.G 9X.P3.)IA1+61;I\>VBC\PI=*=EBK\@*D8LVW\3_7>,7AOT=N%[R;$-QO;7V@TY1 M^&E?I5QOX@P]UBLJF!#-08"6+*SQ-9C^_*CCP7,,YY*/_/X+&OS65.A9:=!8 M4 ,73R_37'IJK.X&_]W,A\X>CB2Q*##_;(L_IC+(P%T*4ZKNT]9L6O,70?(+ M8.#&%C\:4#C'Y*>&Z04V6 Y)%F32W7)O.J:&YM?0_I]O\J/%]A=L_JHT' 0( MG:JQNNC.Q&6 $VAT-UR.MLV_&--/GLQ,[#X_J5()J> &H;$S#;"K4MFURHFB MIWL:;"K1[A3883,;3$/*^J!JB*:^\P+Z76*L(&2WC^(MMB\T%^EQ4HLL%%X< M_0,(SA[^U9)$;SOVF?C,;;TNC:!B;M&5!5%&V4&S [S!+-^ELI96O!: I&&=GYL+/4.12UL;)/%?UE,BFG>($(.)L (58PR\(H,.Y M".+: !+*.:8P*%$<51X$93"J.TFT$KEYSC@"Z/R)CA!KEP305NNLG:"GN:_S M$-0%+J\80*)XZ!,:\L[[G=D+L5F6U0I;9T$65U/$8BS&7=^<'NLU_9OTF=AX ME!2[B'5ZP$;Z?0[R,]!PQ\-Y:>4F&790KV#I*>'VK>AN51I9:!#G0R-]Z3GP M#\=.ST #*58S=(Z>9E4]:SJT5)Q*9'0K)2(+C7A'1<]@PY1,O9]SNPI*#]H- MCZ9SG5XG[D'T)V,C[O'.,]#(TE)NAM63(S1(DJ0USRT#0KNKC6\5R3P##2SP MR^:HERE13+V<8IIC35AU[\Y&Y&.437:>Y'#X!\6R>S87@>!6#<>UO7 L#[-Q M1:#Q 9"*-K_H 5MOF+Q1XL53^XTV3$-V89/P24_R^2W3!4Z;#WA! STSSQOJ M#DB%<7VL6TY.H'AC,BB@67+:;T862$_)M)VT>Y5.SZ+H['>?(O #=I^E\'6F M#K L@I((3EYJON@L1#[H)-_4_'"ML TDQ;TL((NJURP-#4)6F=[(9)MBLC]. MQPJ0#^KL!3+=\?BJ\3R,QQZ^A#7)7=Z0-WA:KXA2#$7W]$?PNYE&W=MW3W# MW NMG@__>O*$1]=WTZM)<8D[_DR@@CJFT>ZJ"H :N7QD6$F]9\*/?]>+N ZY M\'%T?R5-?[Z?=!HR#^\^B9DKAMS8^2'W4=-+^,X7%_]/,5\?DWZIM7#$5FIF M4?5R.:,V&P19Z$]'A9L]0LKQAML%F@(F[77'HB#NA053M1MCM8.6@\E(06M"7Z]%SL2_ MZH9_@/YWP?T2@IOD,GNYW7_^Z"3<"5A=J)S!$M Y(0QIEN<8.\]2N2+;C%PU MW0VGSYZE?/3$]0(5HTD$S9Q9,7K8-()BZ@.="2BD:I@(T:]2(_,>S]TM3=S%YIJ6ANOF M1O:2:0.1=QY+S*<;J!*QPMNS0:V$!CV\OI*Y%D%W8R%KE_'JCG9[/>36YBVG MV76WAY^^5B_< N>2*WPC(MS7-*-C(1AGVFZE1.$9$LO-:N6)P\;"]_QRHOWM MK'8'>_QJ?R2!=T2 JQ:D6,6D9LWN)Z''"'1OEOM[R?\2 -K^X0$''!N:9Q:^%R743HE:$RHH"V MDEJ[HT7SV.W['.)=:"(SBX@@4Z&NYV6*&HRL&=*NSZSV,!9BGZKTFDN6\4>>37JK-$L/# YI M I\9:[%0\F?Y1N]@X6><=?6:ZAH14H7LS%L9RG-XOQ1@LWP:C46@=Y8.B0A7 M]@:&##?.W!F8AR\[7;_9E;K'+W.>.S5MV,<6KS\R!V Q,FUUG4(J*KX2$HB> MP%O6+UB?V6'PA@@>F1C88%.6?O0P^.L(\/:!)S>W4VQ6GO=;J#V;8O ML[G4HC_ <+2 X,%D,>\JG57DG*98 SQS!_@- )[>MC?=.=^7$=)! WR"5!J4 M-D2BEX.*-<#37QG@I\^-"#W'@FDXIJ9(ZW95%^C'F_32\&7PDB$SFW$_64*X MF_7*>XYB ,?9M7O(,%&&#*^ <&E=^#)/VSS.]A5Q?_2:MQ("CU?U(04*\Z#5 M[^KF:A Y!1ZZJ*?I]0"H9PCV<0"_2.EM2ND,4E]S*NYV9U_<%M_ EG>;;\S$ M^F1IJW@713* KF<4(MWE(CD3'G$@/]#TCM@CQ!9,VS+A0T#+-+:4VV*O6*GG MQL#T1(K7"I+4:.[2.MXA*M:]5IOM+-C>U[R!%-3RV>B'W>.IL#7V?JSH)0Z5[6 M&R)M+LA%[R2(:%KGFV+A\-BC"V$AF)0];;EPZ]1 LC3+)ULK%XEEQ'@3+)Q_ MSM'EL7#*:]\QG#4\Q^,UVJX:$WNSH5)(LH/"*]-7I/T478D4,HQ3MBOH/(-) MME8:E]A!Y%"PX_0+@]L5-QV.[DMYZIO)^' AQW-G)7[,P:XU\Q+5UE0;];*K ME-V7ZT4^NMNK1=#7/9CKQ]8U_WM\?+0"X[U,/_ Z^UV$F)-X;J5ZG9Z%]+A9 M(XM'5LYOZ0!>@XT/NAL]O2@KA;4=N9]I+5&^J"1G%N::S=K5H]NWJ[TC6Q;5 MY6S'E6*CI=9%!PT9S45.EWUFF5GD65KL)D=C=)A441X.=E)7VORX&$']%A'*$2_LVWVD MW4P9"_RN"&I4/;U*-I"V*0RP2&9%HZ_=+GW"^;D,/=)MC66;D5O#N:46.F.T M!ZIXAZ7NNBT:#$4/LS //GFU:0H$4LL'*I,6$-LJSJ:"?'6>O3UG$3IOY^8L M#OW>J\XTGK/PL@1_=4%#\8%4-: ++BN"!G*. UPG'S3YF6D7--XY3GSU;%X" M8?G7?H'+@LN5K'IUQ2+)P8RF.RF\H40NOKW^!KD% MSW%-'=A=H*V[X$P5:P?=MF]3.5=T"A1"+ZO%:M,M;8/;E, M]B*^057)E1!#7FB4,BRF^T4Y!59*+))$EUW\>O<-(H32%WP#JYMKXI::8M!Y M9UABZFRMW>]\G2CQ[AO$&[DO^08=S1)-LYD_<- MCFH=WH--VI: 3=MMVY0\,7Q'GA=5S92W\$SW9 RE\B)'(6-+[@XFA0D)(@?/ M#X'H90K<<70>CHK !YII :D'Q*EA0OH%746>[DTTVS/P19(>#*B"&YC-!5A) MW5+D7,H/ >D5$GPI)#W>"N.BX0?3:>*9P6@\8@?-$4ZT\H6<5?A:2N>:0<)G M;'UR19/#8L5J7O*%BHH#(=WO(6J[;WXM3?%Y)B?J6'@AJ"NWQ*S4:!0%5$&: MULA:+:2"^+6TP.>$7E''P&NN \>G&(3G5(;2"QFB)>+$JE_Y6@KA$UV'J*/A MQ6!YN,CD,S,,1[U^P\(,0(^<+V8:/BFDO1X*3A3G7L0IE+-\KS@9EGM4>>I[ M&C6C.#EZA8MQ< JO7XU]!:_0QC%>'CCE)N4IY5XU/1=L:?RUO(&;>(71!,,+ M;F%S+F!#+MNCV;DDB*DB(A^&&-6>"# M$MX*OA82;N,71A,.+SF&6GF5THEYA4'G[9R=JZKU4OKN&$8%!J>7[3Z@ B4" MPN]+QH35E>;479)]*BE'KAK^;8M<+U,PNA6@+:7P ]5H*SZDJ0\>]N;N*HYZ M)# 06\ &CMN%[V86O/5H)O/4,YPRKQ@-TX$XK !)5@SY$&['XL@[TY)F+K;M M=E6E,][V/ @48XQ8'K!8G8 M)4W"!M%8-OJ(S@1&F6NND!I+#X>%86K$Y2GQCNBX(QK+7@K1KVPE=^%EZ?1H M9%?!3&ZHC,WVVK96IM+1JR6-\++TZ&PW=P&\'*QH'U;G$L*2K3ZEZ&5V(I;D MMHE&5D]%9DNC"&XX>&&-P9:8)D;J[2DZ<*2!6&H-G68ELF%R##1&5,MVWJHQ M.@5NKLWJIL_J>1EWG4FC3!J16P$618T1M6TI+ZPQ!L5JS&:E(A[RYZ#4.5))E.?,JZ4DF(.C*^^;>+IK?(NK#$F MN>2,2TYMC25=,JF(#&-_ ,^:]1V/UT(62&$BA[:+8 )L&T@YVP[7 MCH3W;&$A:EW-;]9;"Y1?KB@F14H3,KJ3N*>'O,7#N6/^FO[H^[$""05%3(+* MU;45P0N?%C;: B3;RVJYV6KIJ_P*:90#;%SB9I$U*"\"Y,6!?E54O&1#WH\* M?5+(-N8]$*A!V5F4ASF@3SY??=>B#SL57@WG5(YN98#HP9?3/K"-L'9C2JO,A(@NS#G;@_S!A4#+2(D%K5T MH?H,E;T/T6JX7: I8+(Y!O&R2HCQ!&>S#S@%7_7T"8^N?XX*8U"P4+B&:ZEE MP/.SFI!'R.4W4F'OT2GG B?&6N<9K!XHGU-@_8;:[M"/C[2VRTT@D+ZYLENU M5R.;-12!)<5B?E[4!T&F'KF$5[24W9FXN>NZNZY[BZY+5[;- ^*!D9M/EXJS?7998?4PR_=6T4?*& MD7/=7P7^(ZI$#^X?0EM8MT\B.'DIM#V=M/PLM+E3/,FQI3PZ&!N]H&;U;6L2 MV2GP;XJVZV^1\AS::'<*[/#B>]&V?L#V\_[,AUP7#>JCZ@#5Y>6\W<]4EE3T MSEI^%7./:/.9F#M!U:^&O"+0^ !(19M?A,+=@+)=XD5%@YV^C.8KNU9*Q O^ MD-7;/@-D;H96D/BA\%4ZW77A6[<%^"33FYJ-FJNF.A^AGI*O*=-D?RB)=],; M,;A=?Q>*3[6]6=](C@M)MZCJILN5Q\BXA\4PNO@6MO=VT+NZ\>V32&O6L08, MQ20'.;!2!(![\8/AMS.^5]B,Y>ALTON\\'7G8JC"JFHH/JFCNC7L!?.1E9Z0 MD?,YHI6OO<\+?^-YX<QUWS?7?-=PS;[Z[*^%.'7WT[5?8QGT^CNWQF'/A)%B^7,XU! M=E+4U5@4/O,7/=OKKOFBK?GN/M]=45[6Y\,Z%2O[FK-H:*"[ M[_5$8>W7;4!]]>W7<&BT7S0I%)VP]&+>5KFBS"+#R*F;:&7/8J^FXJPB7ZY2;#J68XTDE'XCDO!2+2.HN_W$.6&(@T!_-O,3" M_B]9SLX7R+2!\AE2G*O,3-#FL;#_M\ND?&'YO]O_KZXN'MG_D23(S(#K+BF^ M+_;!MZ]E!-*[0U)3?QZ&R5_7Z7VR+D9U\>]*1B-3(KW6#W5US)S?A2+X.:N MI>*OI3[/EXJ#VCD*C[Z8VOF8+Y6=E%+-%)[.LWK0K;#9>L?/1V_7\>N%8'E[DHM:"Q4;[;L&!,5+)N=6"B6^PST%23]TW<:?'R S>%>@R\?8'/4 M]*X 7G4A.B;(!"1+42PS3K4HD"%PJOR-DL9W2;^%38^)2,=D^O@\FXX6IA+O M,'T71>2I/'/::L7NQL*FWV>5[S;]K@#.M^DIK$ )N:(T1A4>&6$]:WE>XPT1,%, W(8IKN7^05)SHFAZANMT@0@4/Z1:"[@%S[;! M?D69SND5@5KD690F1F/6%1A "I'SBQ]8?'JX6[R_/MY+HN*J.YBE-\?,/CI\ M>*.L9Z9=\!S7U(%]<#9YVP."9A9" @2,.#5-K:A G:"(;M&T=<4U[2#GN5/3 MA@-:)Q/I20LL1J:MY@RI83HYJ*(TX!2!!0$=$H&>#& K&UYMFPM@/U+2!1,R MPG WW>TJCIH/\L 0ISH/'WBHM+O !X8'2K:IKT^$Y45WH+C3W0BVQY#O[WW] M-4\LRNY13]H^>M9;#W@7Q*)K9 XN-: M_34T/6CY=\'I*AU\:O9> >+'>_$B@K41,^>NI0X7K@\'X&6.Z:.$GT2IKN"IJM.UC5>G[1<-4YWIMH]6Z_ MOXC>IO&Y:!*=N\-55$7ML$M:YE5;8R+G@1W/0CPD.PUI(\=^MT7>5S%>Y?)?-(]DL MY.(AFX49XLMEFQ?4LMM)U^CR%)FG(FE@7Y/-0NXNF]]*-@\KR<[SDL^(]\)_ MGPTIOU^&P!L0)L$$RPY:7_(U@:_W!H@=KPS!99@>(=URSP!\5@;@_'*UV^NV M1V%F"]+N*R0 %B2;&XP6U(@*2D.]X(_(J36-9.QP;@+@',Y$2-O$0KM\,UF_ MW63&%23\7B1S!S&4S;CD]=S. 4SRRBN>[UGM>[ MR^:CG'MR7]2)H1SV4-09/7\XPJF[#%D>M0J@+Z ,0))V4^UG:M$L'OU2?O4] M._?= M55&D*>3MC(J1K8J%;OIFD?_KLX17D&A-K"W%%F 4*],;BLHR5DGDJ MDH'].^J"[U)\E^((1Q17$.=5P_41?:9R%$@V_)ZFE12S&:\YM#A& G>YOIU< M?Y$,.Y=U&Y;+2@ M]*HEJ6QSJAS)X/>>8;_+YJ/9+_SR_C#\%Q+1,35%@C]+E*0XIK%?;?G]\N_C M:FG$5)AT!JW[$S['#]HKJA9)_?#!TME7N1XA[7+/SG]6=AX[14D>OXO"NI$P,&NCX]JN]^_Z^.&J^G=HHN/,G7>[Q>+E5$YA0Y& [TNYOF\D8R< M6HLN4],'HOI1IA*78JHUU>5J1QO7T7JC/>I.P62N^W=)/9NIQ 69>F(CWO>R MM2=.T"SPT0JE=YBD1-&]%-^^L_63M]W=LG7OXWZ4JS/2JD[$C-Y0O;'$85*I MZ0ELY(*^Z'(5O:"PIG=1S$>9ZA@IIIF9Z#RKH%@#[_!YTH=L8!283 MTNBNR%;5O4OJV4S%+JA^G\:J.6GF.>MB":=DVBVPV&[;KQARVS8-^%$$^A,N M/S2"]#(DWI8*\]XG;.[W>M[3#>2C%1,3IA*/DVO!^WR#,&^9+W#]13;YV/TH+9R,BJN^'S&(M!Y M$Y/YHJO(YO .QJC4 GX&ZBZLW@J#_DHULDJ5#=)M*3EJC\R BGZ8]+TTS7O5 M14=8UM5!FL=4O9%IZQ4%R>BER*F+[R*Y9]B+]6F6VWY3FJ(KQKKAEIWNLD!3 MK4!!T?H434N3FS8XP'/X_K8*(1>Y#(-+"*N&"P\WQSN-(-:RI% M2I?KU'F-'+I@2C&'E?C9ZNIIG+S3$.A/-WO9(?Y0DKN7ITE-QK\*Z<- M[B>(8; M!OG@] ..A&0]^QX^!J)N_9RVQN]4GSXH98'FJKK*#YEZ&;BB[,TBI_KV<\C7 MH]:#O+U KDM*W..]N6]Y'N:I77VB@E#H0*\Z1HEQ4,1R^66=[60=Z2^+ MT CN._6V@JN<)"GAPWBMS2M2U2CPEN+RVJY,LJPHZ;K.CJCZ*C67SUXI"_$U*XI;Y"D'FOR\X=C2R302F]X*-8FW)+PKWDIEQ"Q!K)3ET' MY9Q,(5W'U\IFG=/&=Q&+H;MP"BG:8#:FM'ZU1 T,=='@94UJ&%?G;JP(1QP0 M[IW+YEZ6L,IB5NMUVD,H88"8-;'YA$QID9M#C8N$$><#)7U977P2*-V5M)@N M!;E$(1Y9'9AE;Z()412PV]'M\ "P=RYA?%G VNT%6J2="0NC9;_*-FQ)[AF1 M2RK%1<#>ZA2&JOUDC+ I:LYE,K'AOT6>"4NW.T0>::W-VEN?K6.D=N\K6 @@4%-X45D 45M'1) MJS,<5T CY]+<@FZ/ZUQ):B;)E7F'H#Q4&08LZN7:D8BNKE@4^K ?2-^O\\DZ M4L#5 +BCS+AL4+/KUV*^>6;VHMMF8+L@F^@'MN:5K D59*PL3S=JPQP9A>3P M$>LQ[")KUE\Y+!LCC:&WK.1]EB[GF:J*C%8*'@4Q^$ ,]/XLGF%,G<.U\][$K_7-)JM/*HB+=Y9";_6 &QWPCF>#?[=]7-^S>\_NVNY[ M^*)77LHR1:XDZ,-N#4L'*&[H+#UNU_'@H.QL]U3%,0D<2_^&M[S]A47%AZQ9 MOVX[3G-6]9/E5A:GE/02V%XWCQOY!P]!6M]P^+"6IX!-"O0AN:(Q MZU.5(J>QM!/49TG"1S/C9UX6WO"!]XG;[28Y)RT34J<^0"C&'ULJRI88;I0[ M_<[=32^_]Y>R_ UA;WJV")S-URG@I;56A=C^]V_X5\)Q PTJ9YU?(@M%_ M,13]WW]9//22#1G1P,2%O_Q,IAY^LQ5Y^O"CZ:R]:?@BC0_K$O[Z\>BYMJP8 MB&M:OS'B)V&Y?T$I0Z9@_0PB\S.;@C\=O!C>;>WNG5[3@]W]ZT.%W M$BVP2'1-G3?^\^?F%_BO _7TY#]_K5L[R@K !X6O6;_X-_R8"/\C-_^&S^<3 M4QM,_OGQ/SVZ +\Z%F\X6& M$<;?O\*G0++R\#_K!'E%#?#V;\%TIW\]IO0I EZ:!'^='.>Z(;SH*XXB*!JT MK[^GB@1M+VS^?_XG@Z/)O_8#LT*ZA>CEQ'0RF4Q+&,>C:9XCTAC@LA-,Y%"< M3Z4$C!?2Z-/-?PMVXM>_;[V+H0ILM]JK4DPBURHFJ&&ADFN5J42! M;C:K#%.E6^LGAD2[!;F..SO@G2D$C6L:?R:*/PL__\__8"3Z5P)'4T3VD[MY M&H+)\R'X\6Z2'Z1FB>XV-Q1S>;-C#&VC=9?4\F2(7U;6K\E*O,13I;'A] MU.%+\O["G-YJ:!),TD12!!R>(I,<0? 2ET'%+ ?X) &D)/PN9+8:>G-'3^2\ M]%)E,Z5%!^4KI51N/K13\G(1\F';TEW;O&WOMCI4-#6-MQSP>_?A,6BV=CXT M>>+&5&Z'O'$L>,\U=S]LO(KU+T?.QZ$*W[1!GW@,KKWKV/:%V(:@KK3[W0>V M&VXPOD4P5/[;1Y _2>C%'/!A^ZX=3PY,V,&S3?B\B68N=MS8?4<6-F_]%FS MJ\@"TNA5]VA_G1>@&?)<\%=HEYZ.,)(.P<:V;?]VI;/HG4W^3!)W@E^(X+]< M.T3_19#^\1%C9YB)8]T_"3UJ]Y\?"KS) 2+4O*8F\)IFNH*Y_'$=T]#Q>!OV M2PNZP#)M]\=. ]9DRO"3TJ#)\AC2(LIDHRVL0@V(GF+=CCX,D$V08*L))M"A MW?C/FG'9-$$^,.Z$];B8M%P#IJ=\.NRT3]=A<]T>U6V,$EVJ37=[B3;;9=A< MJY?HT0GH\/6@5[A$@=>X=XCS!5Z"7@9RR:) MO:_U /=?:TL440M\>\^U9-H)=PH2\QW,$YL\9@*$AU,E3CA@!T+X.]QS48-O))B\WVQKQ\]X\CXJY]95?T[O5= M(B%@\\:&W(_&OO]MK94VI=9%&";VRM7WCHER-B8^%@U22%NTFO)*&T-5\L7AD&BF)(,HFF MR2NG46. B'-2Z%?G;!?(BA,J"+<%KQQP5\JSG<"R,9Q",(-2ZT&ZUVB^QMU! MM=$HYEJ)NS5'+!J=T"-KK32D]MPRL!3[OZ;X<%L$] M;DE4)Y,&ULES+#)$^\G!LMXC&@N.>/K,82>5'MB5+$$Q-8J;&.6,0:4Z7.II M2[1BC=%LOL:CWJPR[1'=%3KR%K#E[NU?-+8BLG&,/IX=F&"ZKJGO;O^9O>7H M-GW9O/C)0..8Z?^R<'I+,/OR"#_'EW@YE%W7N5FVZ8>F]^+)TXT5KQKB=M 4X]?5K?UUN+Z>8>^/P02;['I>JW?&K' MKJKL3 IZ3"D$$OY:_02!8-D4AF&GL_''T7U\-, ?:Y%+P'";AO&VG:AYMN)( MBK@.NXS_1,G_^ M-[;P?,;W(-_@>\0'F%<8WU=D9MP@?'6;EY,D&SC.]I^&8@#L(!LB(OE&N4G/ M) J1,KFTH9M.<_[:'#1.H%B"XATW48?F 8:DB9P/# ^\>2;ZST]*\SVE 7Y M@VE?G'=L?EI4]:2.K[KBE$!?K9AD/,4%FT10$D7?//*#NN+/>!?J3MGKDP M#L;.MRJMK.LO%F@A29N=4JI<2@Y?XW_.X&%7#S@.!KB=]*_ M;1,"6QLKUE'DNBB,A9&]:E8IT./G@VR9JXE-.5RX_@K6LG@&?7ZJ(8Z6\(\M MH<),=MN&\JA8O):@ED!<[P&;H">3\("%>T!Q>TY!%"="&#^.'.[3U@]3,&$/ ML/1?3J('-&!-30,D-LF&W>R1$6Z%#%F7R-F 7Y/S=^)%D?_CVMY"Z""$G7G0 M4&M;J"<+(Z>W CX[Z!I]KJ*A)%)Y;<(L\PZ?Z+^?LVZF84*Y:H<<>3+S.S*6 M(XT:R?LM? &T@)R[,=+YS(=,T$;+%.56#X'\)_0^L0EG[D1/=WG(B[6U":)-.$ MD 8'RYX>IDASH%?AG+)$ MD6V;81=\,$@RNS3H)T]2?G &\L@52"9_XNGGS&S[@ M014;+><+G>4+^=Q((,A6?[B ?(!.X:!1;'U](C_./X>B?Y74\TX6J*UN>:A+ MA7RHH&3;'XS,JLK75WQ_ EV17JNSJ4KLP7BGQ3L2/]_(1*+)VRIP$XU&X8:U MI]L>E353X+5MEYY+"'WFSC 1*(#>=_/9J+=J2.$,/$@(04*< LA3>%F%I@:L MZRS""-?>IY)^)_[ MKF1*>^LJ^2E!*]IL$FXO"<,G.>>$H;-,%H6P+8!?/(V M>-+MNJEE Q&L_0D,3ZR7SCJ) M/^!#H0@E' \:26=JAB7&N]48[I1W'XTEL>"/^[NN^5_?O!W-?_],\(:4^ ,_ M&+( I1$V$F9P0.%-Z_;PSK KVX>M#W)=]V3=TW!R,HLF)#YP=AO:7#_57_!L M&W9CL^HJU+4N[WK.07[)J ]F18VAAA0SD4BTS,2I]J^_*IO&/U]BOJ!< M)T)H0U3KBNM"80 :1+=M&J$IU8($@&8U2*P/LN7%]0Q(D7?Y1+ABY;' /SSC M,&_6];3M!#6!IK;K SQM4_;#(+W$'^'%]%\)/(G_W+9PIXH#^\U;X3J!:TO^ MIM=[60;.?S]/4@_(&E)U*[B'=1&5T=(LR\N42BXR&IWD5'%AYNZ2^DTE%8H% MG]#@_2#!BR*4U/ <8FD-6SNT5R=_34"0("VNV:L- MGN_;KF%HGK>-G^GGKJ5BK+405!H"@N]2]X=>QL\;SCQ\'*=17*N3^?!2G13V M,X6]-,G\AM01_A/%;U[$\N8%*6^H8"%_$L]&N'M:O25']"KU/R6*:IQ6)ML) MV@\:H1CAYP:(B40.9.TDK5D>VDC9M(,K5>*%[JQ=V+[CP/_"2B6$PT;X!$5J M:2R;6TC":MGY\6_N,20OZHV]*ZL;#8G]U%KX6XOEM<<7$2']_(KX:&"Y=+P)KYKD XW'5P%V?RNLN%38] M.MR6AYL"AZPW?)4DP+"0S*1K*^(NB3>)>V\MES>/Z^/$TCN6[UC^*BS]5MMB M/S]Y,7EADN#/A')Z;D.9G)J 7$\[PB#+,->SAIX#UJW@^S>[:)_89-&TU^_2 M@O#E"P6^.O0=##@X,W3K(:'609O!&Z+":V$:,=RT)6SL;(\"J[4 M/_D'_]^3\P5O3>_<9\ N.0/F3(&F[9W%/R!ZUG-1FSWF'N:;SYG5?'9*Z+\_ M$XD1'.:.'+>,"@STU&]:9;L*"3'C_C.91W1Z\X+/TEZ?B>I M>.C4IOAP?UI>;CV=VC+]S?[Z^&9[_3]#A-H@L0C_VJ*QM*X=@(HJ/'QPC;BW MG(QZ!&+#TR73E8"HZ+SV(^% (PX'B![C^A/;QSC__*BV2B?JD]:%M>L: M0F;=0]ISUQH9JN8#?.=4LSVBS3R.DO.4T0%(;NB&![IBR3_Q+/%G-CQRX)@. M_VXJG=;L[NOX=U7[_X9MATHFB9!4,"0S[,>%D;^A-K&\<(B M-T-*F ]]W,P6GSAI;U?^?7C8WO:W3SEO[Z!$_5%!^J>?NB ,O;)_^J3*03F(ZG70',%!75_].2&'7+GGXE'E^V02N!/T)'QLD,J_I1!'5)/;. A=Y2BT\J$9621G-"RF-8T M390U"OR*9T@M@],L01US1Z]?U?O]@LFQ*#S^LU,C['Z8>-O?Z8MG^MM\;"+0:[9Z/&-7O>*Q>\O'+%UR=+)+/E$W$+OEGC:R?Z@N##^ MQ))HOR^WW^DGYET#;$SV^Z_*.?^6B;_F-%\*_.P'3Y?]*JOSQSGH#A;[VL0> M4O GC^8$]OQ-U=["R@8?Y[G?"%BOUC-KHI42@WN$:NS-42Y0;48CC8@RRB=2+BO@AQAQ+_ MZ_61-T2<"#9OB;+^>'VQIL-GRRI)OT',LJ]9^)\A)OQJ @=@^>R'#LO][O/$ M_Q'84J#JOJ;^$^%F;*C[5G S0J\OS^5E,A]VJZK50Y'=PX%JCZ]GZER#*_)U M:+;-E[LYH=L%,J1(D22+47\!N,13HB[90'N$./M< S>O>TJP[_$)7;J<+9E; M3P_=Q3_A.>?8ZC[."([I:%Y@^N&0YD+;AW-$/2N(::Z&U=2M\@$"ZUNFNX<$ M:ZX-&XZ7>T#1[_-<(P]^K1U^$RF:(#/$7T V^91HPP!,W0^MXR'Z@@_,X^\0 MO$W'"V!\#R<[@7^L/];1/0,A*K$C1+YENGLX1 :@F8:Q/JYC>@ L M6ZZC:"J$1S%#X,S?0''Z*7%\< C#/Q^-<#8V]$YA-T+"R+Q[:Z1UGU :]8&5 MF[T2WWGAO!)Q.D.PY%_[QLI/B?#1R#$62_JF\!LB602=MT1:]PF=[]L%R!I? MY&JM3C/'\_ERH]@5TP2+X^S?.-C&!=E/!T_9MI$,9%B%N?"@?(2ZB.X2X%S(/ MB'EM(L$HJK^+#C@^)1$L8.L8S=8=]P7B(G2-#94C=$5TA]#U,NB:%NNZK76E MB>9O_\[E#Y^3V#_H9; 5PM78T#?"541W"%$N%C M$O YL-J>[M@(4&-#V A0$=TA0+V0'XOBAZ5RMMSKBFDLC?^-&99^2O";&=BT M$T7N$%%?#4S35Z^/_HD*43$Y8+0W'YC&!XO)GEQ[;.O'PN*G5Z\>JZ-ZL!JJ M!WN*5#]<#U;22$K%,%IDI0PCIEF9%25*8D29D>4TFZ$Q-B-]^W&A6J&1>M+O M51?+<0(,S.8ZHT2WQ_7"+/1$AR]R'1C%F"@T.P/P8ZK6;%;A[Z]BN>6O1,J7 M!>M#V>GM@GXR;&^F>S M$G:Y-[>)3MB\+N'8B0(X]T180?8?/AQSZ(P-/SFT MP?YG6,M=TFT/3/JY!(D_DWSX!\_7_<#78%'XM>2J*=-QC$.KC.-0Z3 :O-J" MC1B.31?D;=@]H>7J*]C'X843O ;^F89*+Y@I5(!A9P5(DSC+4DGX0,D*VWL\ M)7HSS=->O@W,2=%<.^$$;D(^-,1+)ISG)/S0P_ZSNP?X/-2PP9?"OR@_T_B] MQ!KVBP#_PF>!F\2&#Y+GL,O'ZN"JUS8+\.OAR;"SR,O7_L%;DXGU3%=F"DD 8[6=UPH R8F M$GBF;BMFH.X[7X3G'I( ?.NO#_+$9EO2]OBH!*Q6"4@D@+-_IB-)MR(MW,'4 M%7T!GA'YB^<%5N1363-U;17Y6 %KG$DG/G<"4WW[H1I$QFF 96I&YJY??LIV*BW'SU3TML_0$J+?.9 +-:CDSA"K!:9R,+5 M5#VZ$F]V:H-\@!Q:9.Q:-R,O7,.O'S\+.QR$-+<_??@[9/.0YCP=P)KD)BQ- MLB$E 5(#=&X?FN0\-]Y1?U;7./13 0<#QP-NLB4_<,/;:!+L?]ISU/ZOI_D) M,F$X)4 T(?4#AG#!00'Z!6 '.%:R%J8&4.0UZZPU0,T&;!IC[E\ V.Z9[_<+ M_9_)KG4_0,Y^#\3!K&4) M=D8"YP2 &NRH_PK]DHDC1X$?P8,T1?+\_>(7KC/?GSKX/4S!?X62(=& 8P980(";[YX00L@A?]908:."N<6$1 L2&J B M^(1W%CEQ'2L'S@"CL.384Q))PO"(%(WO1L.&LY[L MHW3A/0NT?LA=DXFN!*:?#*YUP.,):3*!UT\X0<4/ M )NY^ZHV5Z)1>-?]_@P_=G/NUPFO+["Y,-PNLDCX9;AY&J0Y@&D 9H#@]$PA M+TG_*5&VH#P%&TV=V,?]&_[XZ<<+-@GHT ^7!X_/!!@)^Y[YSO?/EH;_.ZWC MN4 P\?.C8\7I:^E+].:IP>PG[M35R/^QH 'QCOOJK6;^U M?4%Z"PU@+]I2 'WFEI( MLWO; B0G2=66 : E0$=A>SL-2$-)21XK\*_@BG80/MY;KX5M;PA8GIT M8H(4! D(B/,*N*,G 82G4%?0@"XQG1V(3 /:'[Q?-4!0TVT"S&"E@_%A*SX@ M3AZN2%<#EY8'=6XUP>#_V+>AYF'\O#G!&H$& D14(&+9+Z2T?1-/;=_^,\V>)D)H MZ( ]X9ZI,93SWY(CHD9$C8>/?AJZO__7)/P?F,-S_]E0 -W3'_Q,<5P@U*]T M-_ 2_SAHTSG81C:%L\^V-C!]5;-T)119@>:\+USF \W4WN-R:(I+Z.!.]P"J M2D"N-?=J%P3H@S+PRO3E_BQ%^:RKOC%'/9N?GFG[TDR-(!XQU4]JV+?3#:76 M4+-+)DP'8C"D6IA&!=C(3&B :AWKF#,UA0UT;*@"'M5U)#8@FOJU@+L&M&6# M=QRO? "4T%J@P<^TC>Z%!I;G/^YM5#_%8BTTC0#)%RKM83_QYX'0+@'U\AFX M%J:SA*R'JX::&!2D-0^)#X@J?TF5;]0M7YN&QL^]=6H9Z'M;_]'UI"G0\^;L M?5T'V_/!T+Q%Z(?H[-=T%GHZ%JYN0POP_EZ%U 9$11](H-N#VW!/6"\Z6"=4 M3?;W_EPM- !H"3707H(C(-O0L0/EW9?R)5"GI(-W%LJO>\TTC MI+:]QQ%Z:("(J"DS&V[$WILFJ99NZ^&5"ZV@OF3"[KKP3S&B,0R16*Q(;$]/ M0-1;P-L2J+K[N A(17IHL30E< ();P8]BE/H30^)$;N/*8#N?L 8NA?Z+*6?CBD3<$T8UG%PESK/X1H?=YR>]):^ M=7,?W.6ACWL?7F+MHZ;6KNY#0W$86.#"N*AW?,H %70YV+,NF$ \'^^I9*44SS;PE<6AC@-PD#L([ZZ9NJ6_QF;W8&&V%9>KA; MR4/L37@=!+*G+0-H8'ZU9N_5HI.1L_7>'&[N$#OW]J\,V+$P6"Z035V!-Z45 M0%'S$&$TWI:A@A'88['H0/ M!0QZCG X[.XQONX]J0!J .XS_X-70($#O ;!D,YM\XA MT#,TJ3LF3-E4M$6HQ+N _W1WGSE@2NLP-C+$2>@>!8M).(!U#GD#4$I;[+<$ M$L,*TO5O]G_/>>86Q@QHX6QAHL%!\(2; WT#^L^$_.1QMUYMSS'\&'+2E3CC M:YJ3([GVM5Q+(+D6R;5?DOE&T"HV4221F;!I,4VKLBBQJBKBZ4F:IBAE(C'8 M(?-M_XVPZ3W][:8X!,G(J-,CLFY@DRD^)1*'V7\^Q M+?;7K>

SK"M.\F\KW78_LTOVZ V/_( MU+ALE/M*0>&[;*OL-E?-E"A/13RLG?QJY'2(6Y9"^A(FM7FA(A;*.8=J@Y&1 M9[)3F\ZUF6++"#1KE9J+=F[2Y40B^DQ:VHJ\&Q :EJLOZ=:2*5ET90I&1IZY MG;7IED?(O#!PIWE.='$7:T]%4L3>CBP-"H-\==Q9\E9C4N$E8T%HR[:8CHZ< MDIU"IV 3,\P2Y'9G9%G#+,&)5'0D-Z_5QW()PWAIX=-5ER'J3@J.C*PHZTB9 MU-AHVEB@LU.)L\?,K@M'1E;4JA*$S&K M&$2^7C/*Z=)B.UJ+.'YB*%U*EWJTM\2(8:GF8$)MUG -1'1H=E\+^V-JL,\ MUF5J5"$HY$K3*AAZXNS=BL?I\IJ?"[3,URBN6Y19L'[\Q.'SOIHWG'Z3P?1\ MJK]BT\M*8(*GGCC]ACEO-JK<>@PF<.*N"6P)'R_=)OM@HS80YF3+D@(-#(T257S!#&5OV98$V*FNZ M)*UP(=6&0R-4M?8*.P$7!QN,GK56F;6H1HUH]$ F':"LK19WA*[6'%M5'FS18LE1BBVP= 3 ME"7(%<-D.EF?3]DT9:Q4>34;@&6=H*R6MW5J+9O)\C&<;FQRDP-S/4%9 MTZ9E3Z;>+! &N+_HZ)2:G6!@ B=H@!E1$L?5ZZ10;8A.OU61MU9S#8>2;X?N M-H.N,%^,\H9D3OKM0//SBREXZ@ER\:1=ILY,NF6AF,K7IWA6&"@ +LD3Y")S MGD,JPICENU)[TNY28GKM@*$G#M;E2YS2KHY$S/+P>6K.UU8C$UP!)P[6;H#[ MJ;/*"D:J-Q87"YEC7&8MDB<.MJC+Y*C?-C9\CI V@D76* LLBSQQ6OE-1Y(Z MN:V-::*KK0*[C^=$,/3$$;"K46"GQYN:H"D[8S=/5SM="\SU[1&(BD(Q$D9- MP \T!JMED:*D4:I(RSC)4C*M9<@_^,8;7OO8=R(GKMN+@3\IJIQ!-#W57AE* MR:R!19PX\+$2:_0J!CL"#>6L]EVV=12?6:RAD,CR*7?G,A.; M ;?^">+8;&QMYA6'4[[8QZOM8DXW9TLP@5/$,2L?#JG-QMZ6K%C\!K R&1G!O0G9G\W9MUQ2:F&HV_92R+I3" MIQYQ[Q,!!WMY'JKS!U4>:K7*7AM^;3S ?OK>#Y8#+*+Q^^[QK8>GX8>(@E_5 M)7MEZ,G@3YEWR]"]T,-?/!^&@4],9WVT;1U_#Q75[WM3"ZQ5\%L3QXOHB>>A MDNPY9N!K9S9M?$DQKE>&JG?+P1VW_9>!%D],!AU$+ X"I]%!Q.$@L"?\W3*0 MZ"00-CW:02!LBL=! &RBT$G$X200-GWI0?R^B/7O3N2W.L7E-H+YQ$:LG,7SHA]DZLZ'^?/1+']0-=%6[*_WTCOOWI7N!/YZW>_;=[T=46_B$R#DM& M-@ 1P%<0P'D+GO_M9KP,C;P5 OB0!_C7,/C'$4KH4H@W29QIR5]U#QQLH<=4 MO,4F$58"2AQ#MF*,$@1&$#>%#K$F!>+6:0&_*5J(P4WQ3#>9W]'-OB4.\X2? M5VSX?"3/_FM/U*EM^?:#\SSM11#;Q\@B9GCPB\6=1SIX*0J\K.JE*)HVF9S[ MZ#^^'=]^'!-(I/"(OW^U4'#9Q7^2&"XD'$%3)MJ'@Y<#;01B#,08)TSL:"/N MC#'^3%JXF&CPG"=P+.7P&SE!\F;[YC+P!Y@ZMPKKDWCW:$:X. K&2"#\[R^_ M\B^GZ+SM!YD@7^?"O+_RQ+_U#>SN5X U>V#69V#K?@=F@0G@![$+JT!)KBH* MW;Q8D*UAIX)GMAAA6T)SW*H2VWS[VS'+.?P6YXG-B [JJ;HEF1Z__:BI)B^^0(SE;A?_P/]F1\W.2ZV[!)O=A>@A02,%Y@6^!)Q\#EB6L;03M M_(K/T971CI-KN3$U%2D8N<@D&9SY]_^^WHEM?7HJ[ILWGDX(=M^]E .LA*!J@L+!-E*V%)0HDTW368=D& M6'U%=0+9GP3FL?U!6.+AER7>WR#.35VMW''=!%.T HV=$P:>,HIZ=4M@!7?%-J???F0H^I><]QOH@L+W-7?[?"CW]]MMMWTC M2U'LE$\)62/%V_FNT5H#K$OB./7'&^XG7D50P-I"1'@,)RH.N9JW.!;Q1BKQ M/=B*/BM5'<-,;MI@>@/2UOE0/P(Y#H &:OI9+OBV2@.@UF%)3>C MH;\&R "T+SJ3)/#S:U]70(98*V1QU;Y@<:A]B?!#B,5M*>&QO WN'/J11?UL M%O4#,PYT?Y8+/' 2FAN&/KV+]GYYZFB&O+3XXM+RJ*WE9O#96LQ .3"33K)$ M^N9M;8C-KR+A/3:;G]&J_D=\CA7S*VQGYAB#WO:H7*FV)C2G#?@<2'44FR28 MVW>O-0-/JH+7RY7(<4_T=5_)%%\(("8)>U3U$1;$ @N0$?"24N,'P&"G#*BN;[%C M@>A1);+2Z@]+>0@&T/"7).C,/8)!K(7&N$J(+5=;2+H:-ANSO5=-+917&3FW MID+$\VJX7CYF'.Z)ZV8GW\"E<38!\L#F_)[+.5L-+Y%].N6O+0V;=K57W*0' M/2.@4L*42=>RF@G MNM,4 G5B%H)2JK^HKP%,T! FV,SY5<^'%BUC88^$G:5^SP\]QY?,,PN6R SQ MJ&8(9)*\9)#B;RX%U^CC1-J>%0VB('5+$ULDUM,V[(D"A$><2B?Q"^1^("QX M5"Q )LF+QB7^!@P$T2.F"[(^%);+H16TNMJH7^(@&, \L#239"GV'L$@UG)C MC! YA2&C69#\Z.I29XV&R6"WICC$\C:(T<&CN,1;DOE: MKK, Y[%MF9+M<[;ZS+;@YWVW4:T&>;<#-Z4Y$3PMO!@XV .84Y3 "DS)U]2\ MMG#!"\)NT^";G.6 ,]Z%OYZX.V3'U*Q!,^\+76Q)3"J&Y?.;L&,>$"0)/(FG MS^_-0C!Q?S"!XAK/:$:\ DX4-N#MF*ESAD2-2_,9X_$WUZ7CKG47'4=>Z:=Z!HA'+"P3M [)*7EA"/;+TJ9@HOL(7&SF,X+O: M;+0CQ=6X3H;ME*%!DL22^ 429!!+(&A 1LKK2*7O8$-FRBJSO!)4,&U4<5PE M(PY:?H@-]%UCPZW)DS$2'D/=)>5,4H&GH1#)F[ ZQ'+1R&!YSKR9A>9*/MC- M4^:&$_= G>OU2%$715XRUM5UL!R.\QEP#Y"AC$@D,^\4\4)V1]C(>E] MENT7,F-F^NNE:6B#F6YMW:XY\M:0[:'X1R7Q##(=WFT(X^_)?Y]%K=N S*>Z M;![%O;,XI)%BC P$R'9X%6&Q_,S@^W"FAN;S&\4,X :_8SL01GDBU=^I$VR) MIQ=NIC$J*/.IB*?#+)ET$F=0ZC5"#616O%=A\P]A0^_;DRIF8DU#\EIBGFGP MK=ET#6$#EO&!JB9YC[ 1:S$T=C(GLBO>@H4A#M%,R(9XUMH[!VAW;.67,>[+ M'EXJ+C9#C-==UUAA='5>,MHB'O8SPO$D0]]^'B3B;!2G>$>BVT=9&[.F_I3& M/%\@-I:YG9,Z)7U1Y:,(NW?3"O331 .FI"MQ7'TA*^M-&0 M=?#">OX52T;$0:(<8D1/VCQ;"TY<.'9ATUC6<"MG5-W6 MELJH]F3; ;)DV-.%P)(LC=VC<2!N/(2PYB]MC@AKKB/8?@IL"KA6$YOVMF-T MRQDI757LG-0+P6:?.,.D46[VW5HB_ZB #S)+GJG6&PD0$G8W-;4X%GO[^H[L MUUY]S"^(,Q?O.747]):L5EGV6L:R8PT*8WW@J,Y:Q,,F,B0+"XFCHH\(",Y< M\!$!P84K]YQ @EK'\7/JFF2,;0VO4X/1O$T34X@$-$2"=#)-W+X_XPHRH.*8 M\*__]RWS[2/R(,L\X<25XSD4#="C^V9OY%]M3/C[6H/;"99BJF!P39?"K=(/ M]<6[OJ,8L,"/YGIPS_#,OQ*P1H"__??_RI^AGELQ5T3VY(XTB-]CXJ$N6,+\ M20;?;PTI8BDS/-JBSQ[G$,M5(_I^E$6?W=L?RU7?,'W?GC?[D^UAC@W'$PMI M"YL-W8'=-W;D'_\"O6"O <0AM1TDK9Y3Z($.^ M,+R_(_BI&M_AY28G-!?3G;CHECJK=5LDP@+;%)9D6?KF'3V(NU'BRGT)<1]F M;T::#;J[5+#!FA.YN:SEZJN,P4'VAG(ZO5C8VR&JNDZFLBD5G*A)A;6TBF;Y IVC$0@A*D$WQ.N+HEV)) M9B":$JMO4GQ17'-=V@<3K(18 M-1L"2!G5\=17;'V[ [0BJ#-( ,C\@T@0R/ M<1 KCQPYT/U9+O# 26CN!T"_ABFKU,H>Y3&M7A!+E8XWJ3;:(G$LO(W3MU]A M S$ZLD'>D=#WAYP^+0A!CRV,="R7SF 6KY.4/YY"3M_7TDFSY\\V?FA9[H;, MD0W'UU#HX5T9#.)P*2 [XP4%PI"'?QMLU-!+8Y_E%WF#(,E-=;CQ*KGQ6B3" M(MHXE:1P5/ & <(9I40$"!<3'#^&"'Q_WF@'%=_GM7Z;E EJDAKF.8@(^YXL M&(G,@,@,N.> 0T_QA G;_20<&2P@M#8C6V#,302Q7#2R#YY1'#RP:MB8ZP/6 M@J;=$]C*H%DR""[5RVX4KSJ$0>AA46TV<_N12W$C_D?E>&0H/)N\]TF6U_,9 M)TTU\EML4%_-Q#2_L>ETR/*P,0J)K(/(.KCG@Y"@GCV_VSL0_N.&BZC^+:JU M?8M"YNO^KQ^X<_@LO2I/Y6S3*%:LBK2RVND:.Q6)L-YV.LDP=UD!-VYLA. & ME=N^20GWTWBS,%<$:TV7AC!0JSUSG:J;&XV#> -EW"25.7^;>63;O+9M\S,5 MMY5H";U;4WOBAJ*/$/Z$[)CG$C$_E'K9+I0::5F5LT;*WQ2F)KVP&MNV2&3V M+0&Q)'6!6';$U_?'U\A:>399[D.,C2^%,5'S @H;S/U*WZVMZYX3,C9T3N.9 M)(&=OUC60XMK\0Y207G4L3$>/-H^W'Y\8U@1GOCR"K.(-A"/H)"_FTD0?K<_>T87CPH_O0-B/&TH^:&+@C5O2;DLR/!DG_JX9H-3F[48[ MK9>PKJMG3-(4ZEB!L0$G#]R!(?AXK(9<3(A[P7'FW1R'9X^;R.=Z^!U727 MWW@SN\IO2]I@VJ&:0:VSAM<4D!&99"9]^X$Z<>.!1V5\9$>\=(;%NYS?3/6, MML5EFD8S(^535E\D?#;D_'TAZ0R-C(H/;%1L^C/-3=C/%'3.W ID)4#)?2B7 M^#9E3@@3+X+"W[URUOK.[XJ#1LJ@Y>I6:]0MS,IP(AGV0;E/DT/<^ ?A#$HB MODT1]S- ,QZ.&(GH\)I!-VF_*ZTS,YUK0Z"A[Q5H8BWJQCM[&&4-?_'U#K)8JA@ M(@*$\[C"$2!<.UWY!"*T)EM190?M(9^34UM5:Z28T; -$8&&B$ E">S\G3D? M6C!$&CFR3*#LRZO'55X2*!"G($ZYW2A#Q"DQV)B8&Z%^+T;G',O2?4NS?2\! M).90) ZSO15D@T+Q-;$,K+LAX'NTLW]4@C]O0!DB^-NXUI$@C!0CI!C%PX00 MMXU C($8(Q86@[AMQ'TQQLW; [J^HQ@SQU0UUPOK.V;^E="6 5S\KG?1MF5&X5/ M!-4\KS446UJ2VW2[ON1K:E\R ZVEN5TXU^=X&VP?;].07%?,I$?"&)M[:Y[H MCHAMIR0'=O=LV_"IV**+[<-X("CY^G;3$'2]ME6K0D,8>& ?L*>3$4>_ M"$'Z3:S60G(3*SB5CU+C!X.[#F?0R@:35:7OU 5K4DKY1'LC]W;K:Y)BN-\> M%_@SQP7K4M^&?(5;7^N(LU0'W^3Y;9_1C8%=SQ5&[?,M_F($^*'5D[V=.79Z M.Y&G<8M+\ZU:=H>WPX1?[&3XZY^1WGZ7$M+S9&Z9!%.>IL"#6#NNZFGV1TZA M['G!BQ-XR?H5=5Q3BQVY9BRUB86U*FNE9/P6 J]$?U^[='RN!TO9FF\,G=W2 M?K8XRWA%0'RV\]6$IX>3"'WK'_NB$_@>W&(@4" SRSW8'^,0^!V[.+[W@KTA MJZ?T36I/!M]+X3\BI5:)E54=& +!-EJ"/[ZY';^R2&%F[__'3X);"& M'G/_R5J#LS]^=*+S"6)3Q*:WZQ+X6C8MK^:JF)JS1K?&EA1VGB-R4\2F#Q#^ M<#F,^J1%!,8X.O8#F$/V"_V\#4!H%R>>61NW,'_,UQ2FB ?3F&JA M7[OT3$G*2#);^2W(^-?JT2#INI0P95[V:D.LN2<)IYE+S M/G<5D71O#7HCD/XA29U>K%O7>*RFJKPQ:(I=U]VH3*YXG<6>LF1];,5^HJLM M?,V2-3=!8LD$Q(IP'_*:C7]$H5XXJ<2(;=XG"2O/D:!XBCKV(U>VR.OHC( M]RN6=O!>@VP/=R2O]5O.V)XWJH7A&K(TK-Y,H-+-*#!I3_LEV0I$6NB^9=V"9C27N/YX#!?6!NZ"\]Y.A6X"?RW9NS\TO[HP3UX7N3F;2 MM$8,A:Z<'[NLGJM3]%1,[UO!9>@DAMUE5W@$$+$ "-0,[I+BXQ\A1!7/%)5M M(V49>C6[HWP+M]SB&B($%"CI3!(C[Q(A8BUGQE:H5)3 "DSHXDLX8:,0Q;$6 MKC;3;$]?:0G3\5 9FYC;$&*YZ!NS%+X-=4&DCDC]5DQH'R#O?]R:X//S6@K; M1>1>7DIE&]Q16@W<3 W-;TYZT@9(06!CP#M.B$.;;GDQV3:LED&88J_=81;; MW;(MIL/N:&34O/;/6\. 6,L]-V1?ZVB^I-M #M(DUP:S0LW1'J)I41RT:M0( M+49FN2,.\ <8>'$7Y;6)KNBG^A3UB\(&SX\F3:P;U%K+(MW+-^$M$S9$2R>Q M#'V/*C>"EYN %]3_+$ZR[1_AR]"<]>J;4< (@9MKV-FT(DJ--<27T$NK6%)QXWC*/?:6@UFC7$D]?5ICC0WX^<5UD*?"* M^L3K\)8P5QMYIU/%U^"Z"#NDX0R6)/#;[X>$<"%^N( ZI%U-KOP0,.@%>;C= M]H9Y+"71*44;4D5+FT)@@')DADT2Q.T#0ZREQEA81/^PJ6Z80W(YP1)9-#YH MT2 !R*I.()M:'.^9_[Z\L?3R&Q+S:^<2G7HY6_V8<)HJ;]8%RU[RVEPE^&%] MN,UM@7":AL(IR5))_ +"*<(6A"U_9BE%V'*-IK\?!9?9+"C;A3H]-G("^%^U MP.X&WA2""W3WL^EDFD#1CW\I\_ZO+P'J/\/,%0W0EGN<>OJ%P/KN,HB/+^+B M4^YJ6D)28%"E9&_!J2=LQP?O\IU$SK'!-#U-A3^%*G(8A5G0;.Q'U,/^!^[LB\>^>A;0$4WS7^_I-<C>DB^VY<5___,_7J[F M)R^F%,=TW.]'T'ZQ>X>-(4+FG&HIV=4D(R5-P.N_2^9:VGI''8Y]>K9\?G_& M?3(,,H';^C^)%S_#38F.%X:"?W&R+ $)BD$+2H$P8AI1=5$ M9D(HX%I+9U0L3:2E"?5M_]8S4_EAZ^17;SELBPRN/O#'0;E6RW.-1+'3%%K) MO1&OW,@]);A&/M$5LMUROLQURGSWW_\K[W=IO\IFB^]PO7*ST179-(:GF9BL MZ.5=NG"U5'B; EDEUVSD^4:7S\.?NLU:.<_UP"_='OBGSC=ZW42SD C7^-YN MY9KU5H5^WP"[%.SSC]OS+67_NW'/W0[X<^

J M0(V2'I6RRI\N@E'1M[N8?Q$ M':][. 9@>U2;"ZK>".!(''\[=$E/)Y1+5ER>WK8D3'65*LNV13(ZT5$6KY6( M-+OE)3:SG*CR4&]4.# R,E%_D&IN?%U="LL*WNC.E5XVR\&1D8EN*49(;:M4 M3B!DI0=4BI+.Y>';HQ,E2H/NL-:;#85E:RGK0K6ZX[6UF!:QMR-[39TM;JJD M;%CITLBAC%*J8@%5(;HD+CO*=HJKGBQTB2'O$2K;']%M,#*RI+%&4WE.V:C& MMLI)8L[.-*6_2Z M-I@K%1TJU%?-YF2\FPO%#(=)]1I>*&[ 4T_LOYQVA&&99G)\T1K116DPIC4= M//7$ 11W64E9NB5-"'9>R!3MPX@2<_DRJ35(4CUFKXKCN56;.B&@# MC3LZ-$U;S+PXF.\,(M_E>[*WJRT+@*-/'$&&[5:;7':9P:KN=-V3>L),4 'T MG#@";-:EE@HM-H7BH#P",R8FDS(G$B>.8)%;I&VNIJI8TUFQZVPM[Y 2>.J) M(RA@-4*BBBV;[SIZBF.KPQ9:Y57U5%05EUPB'DF^'&M9"[&\*^ KK=C/;=6_8G0W&;6@BB;(6 M-;4]N[*3#"UO+E>3+B\M:^'0" 3Q%<7+^)OMU*"W=6SNJ>4!T$S@T @&]2F1 MVJ3:C::QS/",OY#'JTUU"H=&0&A6KPS$#-%M"S1&ZO14K8G#:?C4* IA(S&] MF30M09"V^66O*F?<6A:,/4$$>&",I;Q971A5@9V44M5RI\B#=9T@@BI>Q/RM M1G.&IJ0-?:<:9M7BX-#(%I#XF*OCC7G%6+;='5:3+$:8K.'0R!9DAJ6AEGLMDM>4XM&B^;;;+$1SC6Z!;/FJ&*W*[F- MH&'$5.#;N5H+7FTG0&/9J:TZ"C:6L,%F90AV=C.TK34<&EF7:^X:A6:OGS&Z MDE.9V[BRZA/AT,BZ6@:AF2YGZ]B2X+*5#+W#>#,<&EF7-E.G125+R'RS5!!4 M>FG++:8-AT;7Q1,SA59,3#?H>@*VM1:BES;J1QZJ+[6HQ= .E70^+51V'AA:&9T5];V4%2KHI+3SM M^_&'EU(BU&L/.BU4[Y2]6OA:BWYA8CNHT%A$]?7=XUL/3\/W$N;'/+D4^<2^ M&__W0B%]\7P'/'-B.NNC?'K\/=1XON]M#K ]QV]U_8-=)WSQ<:@D>XX9^-J9 M=?Q?&^'P3U@27UIL_M+<2J.#B,=!D.@@XG 0S%.&0 <1@X/ GQC$$?$X"!P= M1!P.@GDB<'00,3@(!$VQ.0C$$;$X".:)10<1AX- T!2;@T!24RP.@GG"WTV9 M0 ?QN8/X9-;&;VU]EULU\\E8O;-9U:[D[?_335 <$W[X?]^H;W^X(000U#)7 MS6QC_C)HHS=S-2U1!W^8>0G>5F$3'?EK:.7]"_NR[/&G42%?2RK,39-*0[?? MHQ2$GP^+G\2?,@6./6'GS?O\6Z)_U2_KIJ#QS\G@R\#RC^F"#4.;8TP63<5W M(%'@MT43MT,!,.GJ77_5U4D (<.5D.%=@]S5R>)7R(#$H^N+1W][MON\V2\7^(%MK&O2 MU%1K]M_4?0_9M> ZUI&%![H_RP4>V'G-Y3>*&<#]Y3Q/ _]7]WU'WM8?(3PZ M4ZRL_(F@JU.UR:[3HBIP8EC;""?P)'FR4/,7W82/B!#XPR $C!6+X4IC@A#D MO@(10 @<$P_EB,2-M4NEEKV.L/1,NDAO"YFUM+XR0@CMG-DQ"-"X+0]##:E[$IH M%K/=LI$:[73BVB+$J%\()HVQ7#*D3;F:US:Y8L: =0G8;S](G$HRS*D*9@@A MD CQH5#"&*XT)@A!G! A:OZ\,)2:OB94,6:UXGPLE^&O+4*P-7G)U LRCP4N M/<>JK-/?DE"$P(EO/P@:3U+D>T+$K?FH[L,K%8]%OI^F>Q>+_%T*[,4+;E[H M:*\;67+!N_K.%_F[/$E$OS=[M+]+^+N+1?XNF0[1[\T>[8/@[_L95[&FW]OT MF>9U5U-\H)=YO@?K_2IO?*B)?^@VT(Q@]W?X9S4<;FX38=*:I@)M; $^T4-% M+FQ2(UD.6/0N_."?WY$+]NM=L'>^[E\Z9.]\W<@*^%CK_J5;\<[7_;AT_ICG M_4OOV)VO^W'I_%'Q_!<^GMM8=]Q=$\\=:' B?$%7,B7WV!ES+4TU#[DBXN2* M>%_+/@9CW[[+X#)-(&=+T;B[CGS$D:^BW'FE9TI=Q8#^7O.+'&M4HL=;#B!KLK:S$U) MDUX*]B"!'<;I))FF$6?&VGUT, MS"S@GU_CLQ.'P-7%37Z1I5U.9M/M6< M3-BRA\UX \(%#>0J,LD09U1Y'A$N;H]=OMZD<5OKOQ,KR-? A9\/VD6Y3.O8 M8*FQV8PEZ70;=D5FO_W *8 7[!F-EX^(%X\N7J"$S"O99KX&+QH^[G>M7;XI M= N:B7<:W8:R70.\@'8;',>3#/V>'_)VHAV8\ 4]QY?,5Z:84\':* +B4[:8 M^++Z&0PO\5WLG5A97MJ(OWN/K@.O6TYEEO2%LAYB[Q7TE38PA M7]/??M!8$L^@N*B_M&[$E]3/8,J([V+OQ&[Q4;XNIMMKMF.*+:R9#7!%V TY MDEV#^; PWI%*IG'$V.C"_KC-(;Z+O1,#PT<9>UNQ":PPKG/%8ULBY*[47-UES)W->R M4BW=UCT?:JTK+:%M%IKM:=[75;6Z>SY&16_O8Y$/9(V\\T5>)BW[ZB?Y$.3Z M "=YF5SEJY_D0Y#K0Z#K)1)XKRF,Q\2!\:LB4,G$0MJZCFDF?&ES^(-F+4QG MJVD)&;/@C;GSN=]*O8GB]/"JVZF!8%39L6LXJ-=7/;D.UAC2L6L#U**[U_E]3Y MTT8?@NW/GQ;Z56P_[_<:2F>S;F*TT-T.FO:Z499#MF?WP=4TZNV-;ON;=JO= M2?#EE[*]5UOJ"UGR#2'5FX_-J4S9V'8*V1Z&:%*9)$7>1Y+GWII1D!3(V4=[ MQF3_ZW.O'>1UC)/7$=6WOBGCPS$HO*DH : S9=O0_!.(8P9F>\@4\P5!JI66 M^*>/ !]D24\?#?&%7;_+%:;.W:^3Q M734_A6Q)0[8D*1RQ9:R]R*BR]4TI[Q]D2ZY2S4NKQ=;':(XV*7NC3?G.&K(E M5,N3+'M&K?SNV?*N;DM4UOHK,QM_QY;=8;[>'!N*8!5K&(/KBC#:WY90;<[\ MQC=V#V$!T,"0DJ&% 9S23Q,#\OLCOS_R^U]+]>[.)%?[B-EOO;9':ZT9&(+4 M$J7R9M<:,GY;Q--0"<>3-(8J32-C/W+MQT=[_S!G%P8I31IZX[5!#!>J/>S1 MV_%H#3D;5H5.$N^YLR 'R8L_VM+Q:R5799 M#G)V: J@"52^&=W9R$$?'QO"ASF[DJ6G6-DT6H+D=H(63^>EQ6(*.3NLDY1. MDNGWS'RWYH3/:PL7[%BX&_LD8,L!T]U]K0'A[O$)N>!O$7DN8@=XR6&W/L>DP9XF- M:NI!Y'M54>^0&'0" G/&+&OTQIJ-2=G9MCE3:BILNH#34.MGDS2-TGQ1-TC4 M;/I^S U_!Q?C_@8?+U+U)6:U1:>9UE:?P<74YRE['9IEQ$L:N4QR]G*4C93"!>PIQ.5Q,Z9N/"(>/'HX@5J-GWM MC(F_P@N;SR@+ L\R C%UO+0Z;PQJZ1 O0H,,F\3(K\^HN(;UY66SZ>GO"Z&C M<(A/F6/BR^UGL+W$=['W9FA9:/!U]O2 7]X) "/H35Z3J4(?2Q7\0H-?U7=Z M!0!8!II32"9)H*;3J(?E)RPE\5WLO9E%/L#2+'VWM1KVQH:RK3B6EOA'S?&\?R8FKF,EG/W..39JU(!"0!XI! 1B MWC_NPQBQ9VO(U #VP%K!'B+"JY/F+,*/ECQW57 J"-U,5RVIQ 58).'9#J- M6KN@:(Z'CN8XJZ!P6=O'QP0%M9=K5:NUEFW0=4%>ZBTZD)4VA(30#)*DZ6@% M6"0K(%GAD4(VS@P*ES29? P44G.KD^W/-(-OK@M,?YCJJ9@1:@_0>L(F&3R: M)O//VPW+>(4"^V$I4YOXX?LOA H/$ZQQ73Y&7>Q1G^5;3D2]U[;V<5OU@Q#T M(QXM:GQ_/XM\3$"^1 F!KUGD#;I1_W5(DD_H!__I(2;[G]^1S_3VBMQ?G5>O M5/S^ZN>-K'N/M.ZKE8*_^GD_*IT_YGE?K3#ZU<_[4>G\4?'\2F7"KZEV7,,! ML:_*5;9]S=4\_YC_F4S8FH_<"K?C5KB?DMBW'REY9*:]J_,0(]YP;.?H ]WW M]ONE\S/M.DVYV%Y;PC8CD^D"XVQ7[;5(X/LF66GRG,&3=\^KU[?8W4]A[#/S MZ@7"%O^65QM2KI[?S.P^7UR/ZQJ]EI=.JPUYE?[V@R6CN=>(4V_(-W0_Q;%O M/ZSP;SF5ZY3:)EWML;PUD-C6N*3.-H4IY%3VVP\R2>#1-E:(5Q_S5KURA>S; MC_;[6UY=:)G &ZL[UUAN;3O3Z709Q@IO51C^1R9Q+%K-_J_#_V*2._FB3/;7 M:N$W:TQ!B9)?[?R+\?KOK803Y..7R/<*$D\U\JC4Q6F!8A"!Y0^N3=IT_>6QVIS\+#H+J=ZQ*O>7S1J0GY<839DD M:-2L&PD0#YU+>6^UJ#Z+$-2BTA^/,'YJZ X^JPR&\GB,KR%"A+:5]PI*WDY4 MP\MJUTX83(T"&_[8?A)?7CZ#L236B[WQP(CW8.J7MF Y.W.P=(ZE!;V#I<&J M?;E9!Q(-"0TB-(MB(5"-S+LH;WW[L11_Q-[3%-OL.8I%&$V+[&]5L-RF$ MMW=HCV"I=QVYB,'1_7TK-:YO/VKCCQC<'.C5_IQ(S?GFLCO@*U6UQ+>GD,'W MH1K8"8OCO81JG"IS+6M@O[5C[K8O;;ZPE]8C&EBOE+9][0B->P6R"R5@'&O, M%5S'RH%YZ'8 MK#Y7'T^&W+I?EP/\BB_\5T)7"ZZ+;G;LJ]9'D!#N +7"3L+ M'B/:WBUYG5NQ7-N2<:%(4W9UU\O6N V PO0A;^.LLLXC8L.54B.O'9WQ$,Z3 M"V5_G!,H(KI04>#$1SBQSP7B>1:6@7>;Y.I;G>%;5?X*J>X](!OM"$XA(W$B"1SH@DHJH6-8COB7[3B7FMA MQVW5#^0->;2CC4,)"$30=UL X5Z+8\=MU0]"T(^)T-_UWX$4L1YRSU\XBX\.A9<#>9)WSCT>9_@ OLCNF+FT4S+Q37 MP7!C[-A9/0AQ@?[V@R 1*J#L^^V&D6X@*2%N\^9OQ?G[:=P(;=I"*EN5YH;VY[?8SBR/9): M:X@+T/%*)4GJW>J^M^9W;6C^<\03>UB['MU,VZF_AJ]I:%G,M==87BN)*"0)/+6[(MDADPD*"9RP# M=.>$?BKK[A'9/9I<_+CL?HGD^M^PN]3N=>=E:50VN&WCFEGTJC?T1^C^;7QXO?;]]V\9;%?UTS@YD/.HNIPQH6W>&5$C,-IO/P M:FAZ_^IL^X=B]TNDVW^4W2L;H2L&5&:-T2677-)CLO;J;XL[7'<>LG7XOD8)Z]9-\"')]"+A%":;7=$X(MJN! MJ>XT-3&5=/L@TB<<.Z&")ZTD'XK[8=$?2?&]L %1PIG [%3DE[B_7-2K@\'M MY:A&([7@MN#$5T3;(^M6S.C@ZOQQ>UEI=Q;)&%K# +&&YCJJIEB2U7'-?H F'"46WIWR2=?P\ZQR*&+"3M?P,;R.7;NU+=;@^6X M/E^4@T9W/F9ZA=04LC/][0=+G=%D^,.XZUL+.!I M@B>RKCIM%-7P:M[G?N+G:/X3J_ *E/L9NQB+.U\WROU$'H>'7#?*_7QXPD>Y MGX^T[L>E\T<%>)3[>6$K!2^Y-GB#E_A'+0P+7VANPIM)KH9R/E'.YZ5S/J]^ MD@]C)+SS15XFQ?/J)_D0Y/H )XDR.N]GD0^!KI?(Z$0)G X#!SZ4^/;@./!G@8[GP $F:+2];'U2%:3\JL,/-YZ5P=<0 M!^@0!Z(%M!$.G#LK]#YPX$.)GO'"@0\$4_TEZ_]I@.17L/Z;4*J?&"!GW M-?R:H<6-P5JR+]:$P40O5[EV>6140X;>6QM0@C1*J+S#A,H;-!K\Y.%?:@R. MTEYX>"_E"$1F93.D,FO2:MX4 MNIN)HA"]9H_]>;7R50_:]*2ZKH^:B.BI/(=/#MII$DCYG M5.,C,GW\F.)KF3Y^+J*+,OU%>DC\+=./VE.%:+ORUACTC;8[R,N85VI#IF=# MIF)OV5Z@M_RG4QIXO-6MY!;MEFE6!V'-ST,D01< M3[+O<7WPV$#K8@WF!I,]H7KA[[KV$4?^BAH/'X=[K60D^P;WD1.O,_*(M"[EBLY9E M^=:F(:\A]])[XV :I3/'VX-\40O HW#O-=7]3W!O?]ZIK\OX5L,T'",;N:6U M+#9"[KV PG_WW'M7=^\E'.?QX=[KZ>V?X-X)WJ><3IL0#)V:UILK1BR66J'D M_''-_7]]23:U,QR@HH&-=8\GB!-'+9QX/L&NIB4D17$LP'!;L,*$[?C@;;Z3 MR#DV8$I/4^%/GF/JJ@2V)%'0;8FN1"YIK]2]6]A2EMOX?[?7C5<[)P^';P^RRDB>_8$TF!3PXX@F'_ ^?S MXK&OGI52--/\UWLVE^,3SGS&1/J%M66_B>D7V_+BO__Y'R]7\]- F%(86.($'FF6DIV-.GX4@]?RAX^F0P[Z[F@E@9*6].;3# MD?O.XCN!0S![>>)I_"D3/?*SV,+HY]/YMY28N1#X_JO7S+VA^/TSX,\ /0"B MF?NGKO?3/7ST[4+O3IS90"L%.I B,IM,94J0E MFA'3N(R+TH2D12HM:0I#*R2MJM_V;STSE1^V3G[UEL.VR(ZIPAR%ZX%?NCWP3YUO]+J)9B'Q6!O0LMH!"91HI2F<#%-X[C(,AE&Q&0Y(]$TSF98_, $TK/T MLVV:5F6VI VIWUUR:5XKKZIKJ'EA;X>V=$494-5*TZ#=ZFI:G0HDT9\"(2_S M=F1]4VM1!8SWL*4/OC4C*VEKT08CHP_-9$M96TEW*&.PV+E-7>7766T*K39O M1YIF:]A>[A3,:%+FK.XSW#0O<&!DY/5 NJ0']#;'&59AG2DY077YM/&RU9YK'&+D9'A2ZRWEC,EO#H9'E8YE**E_. M341LN6TKV\(FT-JI<&AT^>.YTE5'CHAI2PI7ZXU>/5=NBW1T^>M>.;^SNT)> MH&UE7>#9AKL>3<%(/,)\.]VA2]U^JLQOM^-M)2WWUI3)P:&1K=ITG9U*B7Q= MJ#96E1J=[>WLQ5K,1-^_K6-<;S9HL9@N5U+R0N!HI0)'4F]'S@?55&E83J>$ MHF96:[TMN=[J<&1TIMM,=Z(+Z7F+3TWG:G7N-=)2E8-#(S.M-L0"WJTJ,J]E M=LK(F(^(M;06F>A,I;7+:HY=\GEB0V1;OKR9]\=3,#(RTU)U@9?YP9#EMY-\ MJPIM,#+Z_K+=L0V"F^C\LF>+5!DG M&FH^'!IYORMOJJ;8XBDLI7=:*5:R!:(RA4,C])^>6'INW5D9?-.N.XT-1KJS M?ANJU9&Y8JM6S=QUED6AV2@MIUQ>SF\4#@Z- %6OT.V.)E2JQP;C E9DLJ]-NT/ V' M1M95Q,<6U5TPK)$J%$I'0Z%4P MPW8E=^#6>EA0UIC92G.8436<0?3 %#-+3N1,?B+DF'[@&WAI M0(-7KQ="-UNF4]7%5+*U_=C(Q4$V=8!4;7#NFC+/+*KBDLP:8+[IZ(:E^[5A MNI[?L(*UGF6=R;0V[4&:.2%B>!NBO4KSN39?%(O5^9RL.'@Z'!HA! $SS*+= M)=,8/6]62=V?#WK["40((4U7J^UI(&I\8.+N8L4Z V89#HWNU[ RW+8((],V M]%QI%/2JB][678=C(\>[)@N;96F KN!PF M319K9EUH#$49K.R$H&'FRYM<53<#0><'+K/)6K/B8 J'1O8+;XFF[G1;.V.[ M36>V0;"NM(,U'!K9+P:3ZH[1;F:-Y<;.=XG&8#DDPZ=&]LO&=VJ7IKW V.;G MKE05.AU\%LXUNE\Y2:B,:^QT) 0Y'>^;J5RKJX8SB.X7*?'++6YH#$]W]6:Y M.Y RJ0P7CHWL5ZLUF' [W7:-I6_N^.FLE TF8.P)R60[60 MP_72/#UK=;L2 M(P]WLW!H9!-L<@D%O7Q-T$S2[,VIQ;#1F<*AT97Y3EN8B?/ Q7)%!ESE^J+O M[L+'1E?&9%/"HC$<;HWN=CGH;!VKIG!@QT[(,8 2^,ZF!"ZG)IF?>BK7JPL- M#@Z-S%9,!9M.IC3H"9K&--JIP7#CF.%3(T/R1Q# YD' M/R7TZ&2GM^QN+5&HDBN"7!KC4B<7SB"Z,+FUQG&I*;*"5L@QPV$@%0)W_]S( MD?7)RG1I&^,"G]KN9D-/6^.^"YY[0D1J+HB,7!3&2YX0ZH;?QM88.PB'1DB< M&K&V0O?*(I^;+-6*V)BGYM5P:&2_9HZUF=5WJ9+1M=?C3LGF%Y5.&PZ-;H)9 MR*8 )VYS!C&9 9UB5V 8;!V.C6R"T9MPA55G1&$#QUBZY%KSES@8>T*BRMC+ M%"=GTPVA:V=3.6Q.]P4]'!I9&.WI-2YMY=:\U:*J_Y^]+^U1'%G6_OY*]S^@ MN>=*JQV&14"/=\(S- ,R;W*^G'3Y!QPVZW=+6#J3"2GBB73C%&;P_/L">MKYO?T MAD;5QJ:$]PQ)JO>9O1;!IHEQF?9N,'!W-@M./Y+#U5V?U8RXU\2X['%--[4* MB?&526U$<>Q@7'#B7A/C$HM8A>;9'2>NE4+$>.%<&'%QK\EQC0U;KH9,@Q0% MO-BH-WJKL(?'W9Y0\!W;\TI$K [-'CMTT:"9,)QHYX?5HQC;6=)PA] M-U&RA[8)(Z%%9!4?6!UML:%9/,>N.O-:";SO"6M1JT@^04ITUC0H(\*-!;ON M&''3Y.M&U=#F,&DX,/M13F_G=*[A@3V'/&78K:C64#6,K2RN"X1#S>0&9L#9 M/6'8[1S:F*NS$6$*>:^U4*@9UW"ZL&G2^)C/.H%'\^ P6L%K6FT[W%9%'38] M ;?C\6!4*S(+$>M'N+L<9E?9PJ%MXFW+54=LK[S2 *>#J+IA:RL)JX.W/6%5 ME7%>+E6:!5Y#S 3U8Q$V3 ZNXGT\MUL;&L[7BRAZE=-G[9Y,#X;FG2 M<942)4HVI55F?89J1V!N3Y@_T6;/DZ7N),LW-O52(\^,NT4 ^.0)FV8]*0<$ M/Z4J/,T3);FZY\6Q&?>:P ^OQSB&6)E:)KE:CB8=@JT[71TV30YLO@[:I?F@ MWQ+I56,](?MM7!&CN&UB8#N3*?#.SJ5P.MMBLAUI(P6[^!5.V#3BHEK#:JJ$ M%_-L&G:PKY\%K84(G[9Y"1H5H#\?E+>FTJI1 M==6="!(X<(.FB8%I"S T=E@OX^MPX=:Y;:&U8>)>$P/+=@]A?=C>[TMGA?YG?U-L>WU@IXAQ.&4C=R9X.U.VSAC16W=*>JHN;-N&GB M#9B&24RT5M\7PQY9:BKC$B9N.-@TZ4[V=(4E9;)@[L(A9JS[],*2(M@TN4&2 MA466%!=NC2\.NT.",:00G\=OD)RPCM/*"=NVYYB*N+$KJZV1I< )$K9-;) = MFZ);Q;+FBOU13FS/\XQ4H./7?=H@X]#\4X3[D!I<=2U+6?G:]\NR-. 1O7J3^V,9L9FG'7G+D-_)5 MBORS2.ZS_EW0Y]QRH\=8S^/O&*00?3\$ZR,P"6\&R9^^5Z:^"XDP?\%X.06& M%GB*XT-RS??X$_C7VI_X P:^^M\OCIJ_$OI:O3^']G,.Q)=>._EB"1TI*_&# M$\*Z*T'0WW*O,EJ1(-"*N#=!X$@0:1!$[@VR/1($@J9[$P2>18)(@2"8;SFT M(M(@" 1-J1$$GD>"2($@\M^0'-(@!X1,J1$$,II2(0CZ&X4$D09!(&A*C2 0 M-*5"$.@\=UY!O)U/[=<"=K]OU#"_VD?O@5UW)K8?Y^"W#/FMX--OKS-V@3FX M0[&_%6&YP2&_%"?_R_/\@_/CI\_%O^ M52?DI\?/KCZ7?H!3U= .(?UJ]I1^X!I$_K'D!@CNOM*$?=VIA>#N)L5^AYI^ M0QO[+Z9[3YE[ JWI&_%&_.(6CMQ2EYN#-#DL+C,'O]V#@59'^D]Z[+?S/(MSGI<]\HVBT!Z1;2]#Q]T:. MOU_HX$/GW]M>U$](G_OP/I_[AI./*<@?,[P3JVTF3F2?>4QNGF([H.C:MNL< M\E;W U>JJ]8"SW= )D!Z!VQ7I05%9&<#UQG-0JPO%, M=\6:4'-4U]8R?S9=_UE1JRO0A\\,^C=JR.&X=\4*PBN> ]X'&0]WOVD,W,26 M\;&[B?_4]_S^WZJJ:?/Y;SX\O3;*@F(ICJIEE"!3TE0-UN#-9(F'#*SX>]8U M<.E9.%LIZ./IZ/J0Y^_.#3GR\(<5A;*'LM!'^LXRT^UB/EU"$[AT*OJ M.K 4*K)6WN_WLC!<&E-+1/UQ.^MD##L>_ MFN^'VNQ$V>CZ?NP65!7RN_:T@L':=8>BT2R>2Q2-SMS,,KA$'7@\ M!>/^U]EXC+>Q\L5^22Y/[5&O3C [G'1L49AT&N2NU+VN91]WO0![F>;YASMSG@(A#7 !!Q"] Q#\\6QA_KSE'9\T1 M+DR<&N=G2PPWPW+;"_?3Q6"XZ*8/+BK>9C$J:N3:E'1_2_7:3:OOP8*T+( + MFGG LR2"C/-"1O[RXSX'9,19%].%&. A?Z8,)/ZY=1VSM'_@;AR<>D? T'RK M4U4$L<@WI(XUPW2\[)>XRP,&F&?PZ!/(8>Q;$WXYYWBS:*W&Z_JDN:.PN$ V M\73Q'@&C;&B+WM*E-1RC^E6IC'FU MJI+" PFNK";1KDHO>;*X:NYG?&,QG>CRH6(;03[@^3RR,&X/*\XA0G0J 6 Q MW#24; ,KDN9."\;LI.+PRW(*#(.?UWFN7E;GBN28N%(O%D:-[-R4-_ D 8O1 M$4S^@82>^9<7>MKI7(\BS]!Q_P=G;<:= ^E!7Q%X&IC8C!%[;S.& X7J: >5 MB(Q@D='LE>7N-.W86@B38LZ<_Y 1"GT%-B53,CQ MRB;E@2OG'C]_UCVY] >YY41IA"8M8.&R,"T,%V+T.90X1"+ >T-L %/JS@Y* MSQ\U.6[4.>IQ!ZBQ?P(6)$)HZZ+,945E-^F*C1[+U\#V'U=+I9*^A>M<"9>* M3MSX("^>0O+#N/#>W?X60&&H6*'V(B:<@(3YGBPX10/73<' Q^/A*L]C%\^ABM3T^M3T;/Z6>[>BHB"O;M8-D:X3=7";6X\*3A!,NN M-U"VDA$L($,=R '\(?ZVH !%AN^G.7X\L%,7TC!QC3<833?M<5MG^.G0(LJ1 MS$*O)LE\X7VT&]_9$-7T-FS1&Y?@7?!&+AZY_Y7]ZN8=B]QL&?H!?">_I\67 MO ?NQ_Q?R'> MX[5+$/$>K\IZ.K,/[KP6C[&A*ICG-;&E2"(0R!RP>Z(U[P^2Y?KXC M=&7&.6S=>0;>J?<,%*Y_ZKIYE[8$W>@$S#*(J('(C7=";DRQ MC^:B%]5_!4Q8@I^O^.VL@].S[J:<*QH5)N( F% 3!"4(-+ +9(&D(?W#$CR M8M9,FPQ+NRHN,G@X8$>4L6VUBF8$((4]!2DH9R;BD2(>*5)OM&4B'NF=R?E> M]3N-)N$[]/O:Z)'08L.FT$<-;YL_.:DSVA9^UJXS&G0[M$@4ID.D/43:NWT) MW@7IX>)AYZOR#E^*P3=P7WAR'(2:_AS.[FE@$#Z0>%_S-H:J'1Q#/4UU=2?N M)?81GW*!!Z[@!ZR.(42'"*B'R+ZW:P [V+/ M0T2_:Y<@(OI=K\7U=:R_WV4E%>9S=[@O25V\4B\&%9\?E*B(@U82Y :^929= M/SFPK04POZ%K:YD_+=?W;R<2>%\%[5$D /',;IIGAO0;1;KN*M*%]!L1<1 1 M!ZGWO<-W&HDX:>>NOE#*&2O56($3%GG3SKN^,"LM9O3JXT$-<'8\E)9OOD%& M[==J@5_"L:XH,'0_JR_FS?)(EPDBKLV&6$+^L-"Q]/ J^VU648', I3 MVF 2L4/C[\1JF_%=RYAE_AN/_W?;UNJ- M2_CH.;NPA-/A1D-J?K,2/II5]ZWF1V,,J?G-2OCH1[MO-3\XU:Y)RU/LCN!4 M-;3#.(V/$"PT#S;SM(7F^,"@/IQ"CAZ*82\W,3"Z-\3)MCB\E=0:ZXVK9 .O^L/R%8D32/? D<>$IQZP)&'1<1)M(-^ MVJ%Y3=B"=M!K5_-S.^.N27NOV4WWP1V,]W>+0C3G"3'D"ON0)_J*;G'Q#L:\ ML8.][;"SP<*QM!1QVF"?TQ_ZC#2H%4"9K1GXLJ!8<0(\)WDXVG:_GN_VXZ+-@T<_<<&IIJ5SUYT]TQ_FR,#]?+JK5PM9K76O2P!O- MSKBWT.9K>_/Q8-RS!QRRV1VRR9S !FG$\OEES;;Q!MLOE#;BOBEX !NR,'<= MD7T@<3H!#YF;628IXA5>?#W],#'_^DHJX<6'^@70\5Y[(=VX$7<-<^IJGG]X M$V!@6"&40,?UX/BY(/",:1@H0%X#M^TZ<03,M2S0I :&"7/*GH"9]4C94Z'= MF9A%>4QKJPHSK8\C"#,4A!D28_&A7NLV^P(IM^_JW59C MV2J99)=P"N9^K4["%-KSK-%FJ^:DG1?[^S6_\R83=JYVX?X*2;SL0Y9$;H-[ MQ)ISR!C9]&^#C5C):=B"DUTSG(Z*36M8J.W67/IPPC)J$]YK,;)H$,RTM*MV M@G4N=B_"T /!Y!^H$_&'S*\$(%+%&#Y6P';G,,&C_53VVHC=KQG#@3)UM(-& M1$:PR&CVRG)WFG9LN H]=:'X6F9E*?2GZ)[B7&OZM-NA.OSU"QD,?^&6Y-/M MZ)Q,/MV.9LYU^8G,DZ'GT:1NTMF%))GYBK=V/IX?Y*"K\-9#V?4&RE8R@@7D M1 $Y@#_$WQ9^+C5RZK9UU.MHI2E>$3%GNE&49E1N!UV9H.&-RF3]D/.E-KUQ MP$9DDI1L04A-4Q98ND,RR:_L5[^+XGY2'J@K+-Z_X-4Y(LGK1SL8 M(O @ L_-"/ N-C!$X+EV"2("SU693[W]+%ILIWJ9QT*Z)KF5<&Y-SU(<] PF M#];9+:@=(^?P=;4C[ZHK+5\1=6CRQ+>47K=YKI_I!)-#Q2G1W'D&WN/R#!5, MZ-$_IT1 "3) %V+].)^C[OX\SM=!:+IW)R#L^I M#;PWO/\8%P\^^ 9[3XLC M;L;!I5'Q#B53?L:48:6T9*.E:8C2=B:IZY:WM4L 4Y@XL5KNZ[(&W]_"0@RR M- ,*"M&B$.U=A6B1?B,&&6*0(?6^=_A&#++[D/.]ZO>5FB?7QB"#)VUL"KUX M\"+>DQLOHVWA9^TZ_>6WPQQ#@0S$:T*\IMN7X%V$A2\>F/M]]8JNF.0T<%]X MF"^THM_XPL-4:'0GI=^ =[%GH>H4-&*1D8/Z]*F*EON]!*BLE3;YA)U\^>:FL!3/WDVEKF3\OU M_?/1X2_M4OWZ(I*I6OWCQW5P=JS%1\?FX1(!F"G0PXE# M=JM2Q]J37-7FA<+*68K]X53V=)G(Q_76H>+,7K9[1X S^]K> MO7C'B_FD4Y_WLK@@3TW:'XTQI.8W*^&C'^V^U?S@5$-:?K,"1F#^CV\-J?G-2CB% M:GYNO]!5:^_;[A$;Z(:EI8A!!/N<_M!GI,&! WE9,_!E0;'B?$Q*D*F'UBY# M/&2@ ^L__Y[>3IJ8KR<7_:C66:#6,S><6EHJ]?K\:9H]@N))>L?.&='6->#+U>?*C7BC&O7SNM M^S*F#%=YC-\I[-CR?74X[7TR'^17X(W&B4:^97>R/+WU,&:]KCM<5H=X R^7 M,N0#S; (Z8WR*;3G=:I0G(PG9A.OJ%NEFENIS5$QMNK2] MWB'6G$/&R*9_&VRTTGY3\(E5(&KR*+N@,,V=K5*($S,OJ.TW-=,R^U5QR.:' MD5KMQW9X?'V9H1]8XE6DN#)ZYK$BJSN'V?3LIS*L1NQ^S1@.E*FC'30B,H)% M1K-7EKO3M&/#5>BI"\77,BM+<:XSAGC+R?>^L'P#\XQ3G9>S^'G\@Y%3*(:J=3^+$2_4;^*,JQXTZ1T7N #T^5<"AVY>9EM$C-5Y@:Z,0 M7^ Y<@2 @81Q!SJ+4C]]*KYPXX-,8;[#K[IJ<1$53H#".J@Y%6FF M:R9)%!KZ0)*Q29^#H "C! @3/G5XN/%!WE&JHW-@PNMN_F:VV["U"J?S6,_? M6!6W(5N3R^,#45T18SKT75/"[3*[JBT;<^AU( \I(W-,DJN , *EC$0I(V]% M@'>QDZ&4D=!NHXL MD\A!^XJ#-OY26,'1^/Q6\U3#/\D)#W+M:;3-SSU1%QHZMK6L=3B:ST#=+ MYE%Q7933$^7T1/I]/9F>4$[/-!C65^J@?.^NF9_E%U6AYU7,HC3:= L]/+^? M1'#79,&NF6/0MHE2J:)4JDB]T:YY5:E4D7XC_496X4VX6]]KR2UUMJ:8HL.+ M=KW?,!8[9^E/=&C)05?KZZ;<=?)50UC_.7 S*V67"90M]+,^.EAU3W&N-9?H M+5-144@.\2*O@!>)U#3MD>,[I.K]]97)T:_.^?6LJF%/L\#KS0;N0-E*1K" M5X* 8,JN%QL*A9_+&IXPGABCSI2JFUD.I[V!-8B6U:[$=V4R!]U@27[>^CJSD^B\%H^[MLAV?0=*1'0@0Q0A5@]SN=$ MNC_/<1K9=[^" _=)N.L]+8BX&0>70\5[HYY5-(F81E;?F7PCMZT:OLG5UP: M$RK.R)I,EH *T2'Z':+?(?U&@=9K"[0B_48\,,0#0^J-X!OQP)!^W]&XK]0\ MN39N$SQS8U/HP8-W1I]<>!EM"S]KU^DL1YRFE H&<9H0IPFI:3J";7?(:;HT MC_LZ"$X#]X4GQP[[Z<_1OIX&!N$#D?^0DG?M_M M+ND7X%UL>H@(=>T2 M1$2H*S:YOHX5];O,)*%DCH:D7&3$RH;'(YP;%4M";"8=DIJ];B==/WNJK04P M3YEK:YD_+=?W;X?+\?4%J%.U\%$L %%Q$!4'Z3>*==U(K OI-Z+B("H.4N][ MA^_KH.*D.=3Q0J77I1>IK8IN5L6&J.5)D\I%$_7CAW=PDJS%!\GFX7K!SR=M M?SRYHW5>V6D+>@1"QU/ Z^VUV89'4 GS$4U [UL ME#B;?UQX%@SS2G-27>SNX _%DXG5-N.[EC%+9>UD%,7YD._LPA).AR,-J?G- M2OAH5]VWFA^M,:3F-ROAHR?MOM7\X%9#6GZS D9@_H]W#:GYS4HXA6I^;L?0 M56OOV^X1&^B&I:6(0P3[G/[09Z3!@0-Y63/P94&QXHQ,2I#I:ZL@=C=GLOA# M!GJN_O/OZ>VX=K^>9/2C! "P+/F(:! @0V<-NN$X<=7,L"36I@G##7X:G2J;SB M['/4JBP:>Y+K+Z?32@3O?>5E"N),%H',[XBS7GSEG1UD7HS!7GRH5PLRKU]! MM1B3;*I2?L,K=',HXLQF9(T_F2;R*P#'*/+[35GP=%,INE9=HDJB8$<0<.!% M4X9^P'$2@<[OX#E>?"6>'71>HC9>?*2(^XCVV:]1^1?ICA8/E"=?RHO1ML*NV7.AX76Z*AWM1D)ITJUPS.;C!0N)D[@$_ MP;Y"^^OM@\TY9(RL^G>@#L2-GYCYB= M__84T/W^!,1P@C,$G-;_R3S[#"Y_^ MZ/JQP^*[!VO6&!OM)Z$=11ZXJ^\D 3'ZN<1SQ# AP"[K1\6Q?%/?_P]@!H(B\L4X1815R(^+@?E[27Q\TR?FL#? M UBOQ6NE6K-9XMJ92D\0.P^'F&:M7?R6X=JE3%\L]&NE&M>K\?VGV.WEW[DH MM$M\N\^7,N!37VC62MP _-(?@/]K\>U!/R.4P6]"L5$5FB6^UX]/XMPCR$QN7$EM)P*:# M_]&J/-/R,SFG36EY.LU3J/P]I6'NVJEB=-EC,JE\7)"MEI M\(7^,MAS,B$3^,]-EV;0G<^PM<.O)RO"[#LFD87.4)GYN:7#YVI*SHIZ?$40 M0[?;W.O;"FR9[!0O[WA.FK,6OML+S(0OB=6JI\M9&#G^L:6Z8*3-;M^7>:TY M'NV[2S?GLK!EXO%$J[+D2O0^AX>#<3G;E":$4X4MDX]7?68[GS0ZODD.!J;; M[1O8)NK"IMF?FS:-6GV;8T1+%+;'$W+,.6N9];EJQY:=S M@1/;L:2V6[S(W;9!2T38\J.FT[57+$V+S$V9K7* MP7A0BT#+Y)C6)C7N<46JP6NUO3ADNP:6),R\VBWY\*#=]L"$Q?S><4 MK+B.F](_-RURJQ5?;?9WO#!J!8-RH;-DUI%,R8GG]T=;G]LWC2:NF&J-J^]Q MG1IW0VIK6ID=1O+%G2EQAN2(; M>]AG%/EX<>* KKB /I;C7 MQ/ ;OK[!Q+!HXI5*K;BV(ZX2#KLRG1S^I.'Y)B9.*!$;=8:MW;C,^#AL21") M3GN%2L]9.CXO#<@\A6^%E1C$31-3U6G1)L8Z5E,4ZO1>\ON:$;8YF4D^?T?5 MVG-ZGJ_C4G$M-\QI4)R78,O$VE>F8F@RD_76;/!3:Y&=Z2%/1*!E\DUS,Y9= MBN"X:2IYO,X.1$G?=N.FB3>=5QIL=V\TP3JQET*A6^.L3DN7V>2;5J=9MMNF M9QN^4HZR^ 1S2DX-MDRL*$.:E0IRNS WM7JQ9XQZ;I6G(M R,:;2;NKYQ-Z: MF/UJ-SMOZ=79""@?>V),B[SJU*6Q,N %;%TGAS6VOJ_ QR?'U&KY([-A! M< M&V@#+E_JJ X3@6-T$L\&)#@+#Q@)MR>[/KMQE&RYU04MD\_?UB49GV7[O B. MZ[WJW,=*^PKL-/E\=N@3NW$G'(I:;E+,LJ-ZMQP"E,:3+\"U\YT2*]AK?NW+ MSI!N]3C;Z,*FB5D-=KR-.0N.X>VZ&5C6K%S"%G'3Q+2V;6%IVXO2 N\W>_V9 M-I@+(A6_0')< BTN>H-5)<+I,:G0I+T83^6XV^3 1B.>:DVL*2$O0*>J M&S=-#(QO%YD9WIXP/):+(E]2M85.QTW9A&K1]GZE50HF3]:<'$G-%VWY\ +) M.1@7FPJCMMD9KSCYUJPNLPMA#MJ2)^!2SIL=@:CE35(. 1PMRL/"1H=-$^.J M8XXRJ 6Y"B\HP626%\?D9A2_0&)<;E[/ MJ^5(=\T^4Z26 QO?"Z4N;)J45]U76'TG9FOB+E?'9;/:;3;&$8#6Y+BV$3,5 M\]W-SB3I:JO)+N>^Z71ATT2ORP5>U\JSE@ U)N^Z^VE+LSG8-+$1; U"&K*% M64-45N-YD-V&98/18=/D3C *IV5L+=@=/B2(2EC4559]@ E-8]]J@;2XY"?E-?NH56)'C MZ=JH9H5UT?)7<=.DSG@J68SF.,!8J=E4_7#;GO2Q*&Z;!-F"H@V7D_+:Q((* MP4E@08Y'H-\3V_$ZE(C1:#"IX:1A]/E:62K/&SILFGR%H3&H]H-W4TJUFR2?*-!;_;K[/S'.CWQ)98RA55&O"F8FNVR^YJ_R8'C3]PV\0K-8-6:!6RG9NYVH6AJ M)"GD "P3AP2'/VV@.;928*F8XX1-6#X25L#: V3K[NO-+)[HU=9B_0FHEV5 M'.VJ"QTV3:S(T<(8UB?]0L33A7P-X -M#6<<;)I8D35UFY^K#:G&V]I\N:E@ M+6W+Q;TF)V&^UW-87R!57!CP8XX/*U3/C[M-3H*VZDK+ON"M\?ZPXJE^6])7 M\!5.;+AE$=-&LD1[?)%6JC-]+;,Y48=-$P-3B#6M&$0C-(UR;\I:Q""'P6WD MQ):K+%C3F,LSS[3IV@ZCG?&(6<:])J F-UJHX+PPXG",HYK4OD%8G7'\KB>V M$1L7R3W3W>&[K3N8;@[AI8EQM MK)BC,"_2\##;QPG#6\^X"@>;)L:5GPN[_JB[F^*-C54E-=PM#,@N;)H85YG@ MHV&M6.-PA<+V?0;GY241O\")I3M5(W" DFE1T%KY#5>:YBBV*Y,G]O+^U*": MN2+6 @<)OKYA9H-PU=5ATT2O#"%&3KBG"GQQ[6&LEC7&KATW3:R$=F_A-R<3 M9RUB*[;7EO8+?&'%+Y"$4+HAUYE<82N(Q>K2WM59DI?A20X_ :&6/*2Y0NAT M>'(^X"9YEE7"&A>W34#HH(6W1K7.:FH:K87#30*[G*? ZY[8]X42TXD(8U,T M[VG:;7DW>N$Q%-8O&O+&HA;/6='%HFYBQ2R53;# MP!0&NT$^/_+ T$YLT=NVA@UF0F-IVMY,+V5)(12YN&E":=ANL=^5^I;+2]/I MV/2GEKIRN[!I\FU]:=?$:]/Z!*^,"_V($89B":Q<\M3&VR2S[3;I^UFS6/$K M D5V& 6^[8F-M]/:U_-X?VF9C?)RN:E-\.5D%C=-O*V/E[52N,_-S'5YKQ4) M92&3'@>;)E2\J(NNO]KU;%&I<)C0V=4*W4K<-#DP4LURPAP;[LV&TFJNNTV! M"N7X#9(#JQ+ZKI'U6B-;)B!AZD1,>UU>>N# M.AZ@EWIA?DN M;)J8K^RN'$W*T<+@I=)J5E/SA27=CE\@.0FU>9"O!\1N*$K;%2WTBX/Q4#T4 M+D], M8IU(R!6'1%K3A0:\5&=]<%%@5Y8CNWF8;OM%=:%J[RZB]:)[ M+&#\8],9L,-MFZPT>#*_V4;5F3&N:W'3Q,",2J& 90MBP>RS_'H4V5S @T,; M:)I0A*7<=G9AIQ#@0!EV^1V;;?=K<=/D'!#CG(5M*XV<*/#*O@,VAN[2X6 & MXN2FZXX;F^9BT!1MO]/QNKK4G>,Z;)H85RLJU+KLSJZ8P@8;S46-',Q;<:^) M<>%%+HPV;;%ADO4UY3M=W,^ON&.EB)\,CV!+L]$:-_$U7U7U9E7HS^SX!4Z< MQZ1"CAT8<@<<,/1LQ>3LBE&*,\8DQM7HK@?R$D MT:MS.78UY2NBYTD[)6\WP=D1-$VL!%;WG9HJ39>FLB5S^BKDJHUFW&L2PQVL MVETWBB*.-PI\U)DXHXC1#\FI$A@>-1:K;1!:)H]U7;.0]-:_"_J<6V[TZ']]_!V#1(/OASA6!";AS?C1T_?* MU'>M,-#^@J$D"@PM\!3'AQ'V[_$G\*^U/_$'#'SUOU\<4'K%'0V^_*6HZ?'G MEUY9_6()':.Y\8,3PKHK0;Q5O X) JV(>Q/$Z\4 D2!^DR#>*EB(!(&@Z=X$ M\7J1(22(WR2(MRHF(4$@:+HW0;Q>3!()XC<)XHV"ET@.")GN31#(:$J%(-XJ M-?L+H[[JI*T7&/);L:9+7LJ!D_#A MRZ0WI B7FH/78R[W, =OA3O0ZKB\9OSBD%77@G_\OS_(/SXX?/9;CD%*@93B MQ^'CW_*O.OD^/7[V'4KQVI5;3E5#.X3TIEGFK(FR[U;FS#>*1D!P4TKQ-3Z# M&QSR6Z?S2^O^KTP".AFC18U.QM>H".ADC$[&:9J5=*V.VSL9?_H,])06'9V M[N/4ZP8+S4/"1L==!/GHN(N.N^BX>_N+^@GIUG/?KP6&<3:<*];Q$#-[%!O'TN.I62\N)52%\;94&Q%$?5,DJ0J2M.J'B[#/&0 M(7&2..L*N/0G MRHH2X#^H&K]8P_@0*XFC),?RQ5N%[RTBVR-X,'6TT]O3[5J@?[@JZ;,'' YZ M-=\/M=F),J-RS\":JK&:FA5KMZ@:Y7Y37'%RG%R9(!^ DJ!RQ&8<73)'L/"F^S!G65M;5.AISZMA6:O=2&'= M\KJ^+.\GA8+-8V; 4KRJN,T.K$;( K#(Y1]P(H< X[R D;_\N,\!&''.OG3A M!7C(GZF"B']N% N09OT#&^/@N#O"Q=[?@#V;,1R1=+I!P-1K>UM. 5R 60:/ M/H$;LV$^*FM^:2Y*4GMAE41]P4GP( *+K.18-@$:_XM UD9QW1ZZ4*-5%L9 MCV2>1[_N$2\$1U XJM+8\KM]DRKG?$D.".[R>/$S3)!;69JO:*[)*^OYWE0K M-F[X<;'CW!]_D_@#1=#(O+@]I#B'"-&!1&X(1ETF1L%6"<=EL@CZ/P#0;]ZBD@[7^M1X!DZ[O_@H\VX MV@$)$1+#*:O;+M?MEJ\325+5I* MGEK8LT_Z)0\!"/#>$!O E+JS@]+S1TV.&W6.>MP!:NR?@(6F62@Z]7)S9F(> MG=-7G#=HFY$<5TRDD_O^=:Z$2P4E;GR0OSU]PMEPX;U[_2V PE"Q0NU%3#@! M"4'AJA'A]>A$ME:@]@HA M#47-K_36>)/F6O+ET:';F:V'A#$OXK2\M.9BW;/:G"['Q9")ARR;/$0@A#A/ MI:.;&.0;580N !!PB 1YCG/2O6CI[>]C;U6406J:=@E>0$W/YF^Y=RN*V!4# MBBAB$;]KVS.KT9?E(O[)0.L9+)]EU&?KEN8)9CA;."J^KU*Y/G25Q!Y48/I0 MKY@^'W.?7C1(\%F/JN% /KRQ>7*IGM.3>NGPR27VI"M@A2/'["N.V?A+804' MX_-;S5,-_R2!?$KUU=Y&J!-FI4_V=S61XYJU2&:@3Y9DONY\=7]K*AW<\4MY M;M..)>>]/SNF@&ES*#YEV_4:NR;<-]/?NF?LIX[:S6\L7::6_E25[NEDL M.;!GLG_\3:%-\_;HT1=R7:8=4]">B?;,&Z;](OU&^HULPBMTM+[7CBM-Z6:^ MG]_2/$T5JYTZ/LS-UUU@QT$GZ^N&W'4R5$,P#YG S:R47290MM##^NA:U3T% MV.77&?&Y9?(I"L4A+N05<"&1FJ8]8GR'!#VHF.>^_WNUCB]NM@S] +Z3W]/B M*\@#=Z!L)2-8P"M 0"YEUXOMA(("S 3XRIKCQV,]83IQ?4=>N_W*%#=(CR"W M^,IP55UF8V9>,J7(^2[[WOB:0;P\M'VE7X!WL7TA7MZU2Q#Q\J[*>#JSA^B\ M!@\1+>WNDIX*_!JO^>U.P9-8C@,&3TS(>]7BN7XZ'O2SQ5E5W7D&7OGV#!5, MY]%SI$1 !3) $V+M.)\+Z?Z\QHAU=^VLN][3XHB;<7!I5#S7/W4;NJB1XFA3 M442\V!HK$V/6L)QL).=CYAWU&K\7+2Q$O;LAZEV*/307O4?]*V!"27NK9"Y# MA]\MN*[<%-H>V89@0@$P05""(MJW&-%&_MTS(,F+&1W#;E33.ZQ0%\E:R]D) M8JCH[2Z %/:/O[,HG2,B.2*2(U)OM&4BDB/2[_O4;V02_F9>XX?,N(G"+0<; MJ1;Q#5E1W2+;DK<-'9AQL>/Z_'[KRW$+GJ_B5%0M?6,G]:KN_?3LCTOJK1HY )(N3=-"$/Z3<* M"=Y.2!#I-V(L(<824F\$WU?)6$H[R?>%@LS$;E-QQP.VS/<;%:K?FEC3?>_C MQW5P=CS4AV^^0??H,++%5T45QRMN3AYP[-SRR*Y,$'&%Y>P#VV6T0&,PGQT,]#+1HEK><35IL$XKS0OW<5N$+L>F$3LT/@[L=IF?-N,2/GK.+BSA=+C1D)K?K(2/9M5]J_G1&$-J?K,2/OK1[EO- M#TZU:]+R%+LC.%4-[3!.=R0$"\V#S3QMH3D^,*@/IY"CAV):X?I%J[#AYR7G@;//,#2%^8#97OBR!,TEZ/FO&!L1&V6CX)ENTE%PT@F M2'#J@8F56,2<1%OHISV:UP0N: N]=C4_MS?NFK3WFOUT']S"VK6.9&ZWO8#? M4:;#* *O$[8>;V',6UO8VRX[&ZP<2TL1JPWV.?VASTB#:@&TV9J!+PN*%><* M5((,M_(,*T,^9*"T_O/OZ>TD'OIZQMN/JSX+5OW,#:>6ELIE?_Z<@)PO"_/S MI>T:%YBH-:6*F&D+(Z>'%2KE:?/C2/'L 8?$?X<;VZ?JZ[:FA8U8:$NF5-JM MU],9V? 7G$QD89H_@GR@\"0\9&YFF:2(67CQ]?3#Q/SK*\F$%Q_J%T#'>PV& M=.-&W#7,/JQY_N%-@(5AA5 "'=>#X^>"P#.F8: >0W7_>;$J3@;@SV<"IM[827XL@S% 09I+91!'&?$',_^(+[^P8\R(? MX.)#O5:,>?TN]*XCY.9DKT?PQJ9*5'NF7M-S*<0;SVX8!-G09J)M+PI]@S""))54"8\P6,VXLOQ+-CSDLDVXN/]'6.TKDI2I]#F7>' ?P1 M-L.#SD87A9W0[/.KWEZJI !Q7B1)T:-2@6&8$;36(;&QM-'-/$U/)PW0[H674671YR?D8:T6O, M^E)WNLZ&PR MU6;F5\) J6)N'\N)NW.8:--^JB%NQ$[PC.% F3K:02,B(UC M =@#T"L_0&N0TE2W6\*/-N4J:&DV0Q7[&U :GVXX,3=+ZR MU&MGI^M/*GMTQ8:PZE'@9E;*+A,H6^B=:_:O7TAU M<[/>U7A<\&A6=KV!LI6,8 &#-D .X _QMX6?%C/@!NXG8*2\F70CG9WA MQ9#QV/*<-#Q*AS!RTBV+4.3:4^FAI,G7@"*_U8=[7D0A_$E+U^I*4RS.M]3> MQ>1R*X@@HK PQQ^!YQ"JH%35*%4U4F^T:5Y7JFJDW[>JWRB_US\SJ MLBQ5Q7[%7(M"7XT(AVHO8_OLD(29P).WJ:\W"3-TOL?I6MQY!K*;/4,%\W=T M'2L1D'D&B#Y6!Y2%&3%VK]0G]"ICM_>D]G$S#BI]Q3ND:O\9'&R#V*OC_%(5 M26:28QA.2K$T>=? 84L94QJ@VE4X/OE BUJ ME7$]/]_*P9;0L_:S<3";EI&BH*9"&.Y"US))%^WVJ@%K'WKL[->RDJW\!] MX^V M;I!?P*#+C0M*CL*GF-CHX5MV6=CF^T$7&G20(/B617=E_,"V%L#LG:ZM9?ZT M7-^_T@CEF=UUJ5J^*-J!F&97P#1#:HJ"O<:+/ U3=OP M2L.TN5RYOZ"P/8%Q\1IDWK$&KY^P!?T[H>-IX&WWVBRC X"$J0-GH)>-$E=L MB4O@@*'?3@K!2]T(?;/8$[':9GS7,F:IK/6$PAN_JSK][]>#5+BK4C@O:'VD M(_QW:3U(A9\LA?."UD.+L)\H&Q/'.NV4^7B7Q< M(_Q4BD4$2FC3_EV;WLWXS-[/#VZ:3K;4K4IYSQ3[ M[L0J&[5R49IUXTV3>6O3?-L1:H/U96F78K7!/J<_]!EI4 > -ELS\&5!L>(L M>$J0J8?6+D,^9*!D_O/OZ96FZSGW_=0;+$K_"\GN#G7ISY;'RG>H?HN=VXIH MX$23["HRT^ _OMZ?/>"0T>Z0P>;$$O?G"VRMNF4>MSE]O1ST1H/U- *#@NGK M"/*!(9+4U^EQ?0$"O'?W3O?RC[N&B6XUSS^\ M"=CNK1!*H.-ZU[5"Q>M7H?7] M<-P8+>2VJ/6R;FG0X@K-[2>S7WX%;$@4']@DQ;1,>SEK3[I4P?"$+H0-%L & MQ3XP>61E?#8$<.DE=G;H.+CP+SVLUTE1Y^9$?0XLWNV3G['LO*2)!L5CQ8;0 M&HD-29JG #A>9&5U_=Y"&-4,AN][95;&M;%1&,?'%.B^)RD:\2*1Y7'2V7[I M<5VKY?$"-=J)!)*M!-%8+ 8]'%MDNU*@I/"D4I-JU?+2GNY$NBX\A-HC+RYL<<'-0NGJQ4WZH6;97.>PO7. M+6K4MB)F";Z8S\VFQ4U$[7:']0Y#%0S^P+[NR;Q^XO:Q\+L[AWDV[:=J[T;L M^LT8#A2SHQV4)#*"14:S5Y:[T[1CPU7HJ0O%US(K2W%N)KI[9VDYO["L#_,L M4$F =74>U^><;0TJ)&F->,Q?3T/.*T\'\[/GZS^L#?ZH\'&CSE'=.T#;3]7P MF%?X63/8=TR3-*1U<5'O2_J&D\&0R3_^SN&(+X0RH=Y')M2O(CY<,Y[$F8!> MA),3:%(WK$E9:5=SN*%.%QLVW)K>+()H6OO,6P]Z(EKWZ(K]*[,1$IT M<3,-9_UJ)7(F(8]%!78RY(NTW.Q",RWV3P,[[;5#X)6EB/UE3[3AJ, :A[E% MCJ[HNTM;JU?JH'SO'M92 MZO.P[O0*O#(G/KI^O"BL9:J#-CAY )0*BSP -B+4"91I&O-4[=AGVGE9'W(R#:Z/B'1*9_XPI MY(;(+XC!2#%I;5VN$7D'WT*W839.Z(&X((BU>A^L510LOXU@.2)2(OU&7#[$ MY4/JC> ;7)M%#9XT,;B$O&0Q/94(SZC;>%G[3I]ZZCH>4H% M@VA0B :%U!3%YE*CIH@&=73,<[-EZ ?PG?R!^\*38R]];"L4GYD*/0T,P@QE"U@T>_IZFN[L2]Q+'"4YDG, O+=N2MQBLSGQ5<25$(LBN3.Z;SQE89X4VC32[\ [V+30[RI:Y<@JJA^Q2;7F>E0%S"3=H5 5 M.RK)K?* Z8XX:"8=*K6_;B==/W\*%FHWXJS.F3\MU_?/E_'XTD[5.\O9AV(! MB(J#J#A(OU&LZT9B74B_$14'47&0>M\[?%\'%2?-H8X7JG"X,]<>L.NA\_O(.3Y#_U@$^K,MS!=M?EV6T+>@3"QU/ M Z^VUV89'8!G!HAS!GK9*'&"L;B<"!CF^:X4WC@>G2KW3:RV&=^UC%DJ*^*@ M.,[GRU3_?@FGPY6&U/QF)7RJ:-G=J?FI F=(S6])PJ?* =^=FI^H'9QR+4^S M%^+]A85+7-33IZJ.BU*KJX72LM 3B(^7"WSI:?"@ TQ]83Y0MB<./';'&/6U M12#Q!M/W>Y9=7A%,))-T7"V8(+XP#<*-KRNTA[Y063CEZ(+VT&M7\W,[Y*Y) M>Z_:._?!/:RS-N;!2A+GII U;3/;W8V[F![O8]C;3CL;+!U+2Q&W#?8Y M_:'/2(-Z =39FH$O"XH5YPI3@HR@!BZP-3+$0P;*ZS__GMY.N.'KF6^W6-OZ M%[*"'U>8J:S?-<#*3B5FY%4[%CZ_: 0^JO0TJP$_BPWDR, M75[(2OPNOY7YI=_4)A$GDTR\U&E(.'''7"[!7:IY_>!-@95@A%$'']> $<$'@&=,P4(# !F[;=>)( MF&M9H$D-C!.FX#R!,Z(O:YB\'&_-8KM*TZ7>IL0*,<[ PK4DBT#F=\3^+[[R MS@XR+_("+C[4JP69U^]%#Y<-EW"';1.WQ:[ M'0V(=KO(KCH&:ZY73'8A[$B,6G\\&G VR '3#!Y] GNBCNP66Q+&B%(8]I8Y M3O+Q,,:>.'"02U9=NYU+=\C:^4+@>9$)??&A7JVU\P(U&J_,FY,\(0UP;#:) M+ HS6U,S!9CS,]3PL\E:*76F+"[T0K70W7!EAM5CJ,G%#IP\&R]&2L"UR3NR[,5+ M2!##/-!$[C6HB,-!_XX?^P5BA)6;->^5U?WLGY+@VT1PYYVK'[WX:R_>U[2, MHL),I8JS _J4<=P ]!^XF:+KS&#&TAG\% =YH>6>*1N.XJB&8F6>MEO_V\4G MF@5?OGR^QSI_?/ 3Z,60"WY?'$2) M?\M2X"_'30+'_P>^W;-N?^@+4S7+^NNU&Q"//7SQ+)*Y9WP*FNI;K?7\$_F>S=YP8,MX#= V;>IIB8LHG,NY+"S7.LM/Y3RA9>>YW!1G<>*/PU//,VE@ ]0>A?,N M\'B-*2#5FLT2U\Y4>H+8>3@$U&OMXK<,URYE^F*A7RO5N%Z-[S\1!P[#+@KM MOM"LE;@!7^H/P,\6WQ[TA7*1ZU?+34'JRQ25HQ@FO2,'(RCQ[3Y?RCP?2^:? MP62$<@8.)Q./YVG\*1S*GX:3"19NZ ,;#R8V2O&;BHX"C#RPI9[[-=^S7V8_ M89<<5WN64/ L/LO)%$&P<@YG"#E/YBD99[4LA;-,CLP]KG;EZ4*P:858K6,M M\>)VO=S1?(\-/0X:UC^WS$_FQJ W8%V3M-P!2>4M=<,!X_5$2WG163?6M;)H MU!UK&6Q[^YT5@9;4SRV+K<%*U$6U;C:RWJ2I]%OCDA[)V62?]?VVL65K:P?? MV2.6)=I9:;7A0,M$GU%SQDRFP_(6E^KKX7[GB+:;Y>2WW*@9>(]37H51I>UVQN\V:2E0:36M: MRZKU=2"Z1,OAS&=RF%I437O47O.A;U![/H*GK^3C9W:>D.H4;?9K\_*P6)]3 MLRI0)B+9M!DM/-,@JCH>:B52R+MV?C4'O9+)ICF7:1;KU=V Q_2=NA#Z5$'1 M0--LLJFPV?-!C7)#49KUVG1S3RX*[:Y,G!!^>="L^;VM$)H-==J?+W;9Q<35 M9>*$]'%B7\!7BE'>;Q"T7M\38%@G1-6OAE.]OV)L,=P4"@P;#IV% -[U MA*S&]>QPV@W<$K[3PYY4-^95CP&]GA#6B.%#EPVDB4F+HYVY:E'X< Z&=4): MO>ETI0^%.<[O%L-*/^K8NSP!5ND):NC"PMDCEKB0TEOTC4=9D\(:U6 M@1WF#=8P\.(JG]?K':=-$TV56$K-XJQZ(833A6EBCZN;7'*Q:F&BZ MW]6G1FZ\]$5CK(0K^+X_U!1UGG.8$A<_&5@:2^KM4!,VGD1'--YD10[ZFZ #X(S. &* I_7/3F5$VB=PNX$QASB]G=9,8,"W0ZPD=R/F*4 6BYW%- MHG6Y[0F+T0K,P D=R,H!49X$3<+4Y'RTZI#&J!*"%SBA QBI]B1]@<]YNN?F M\V5NX.(2>($3.K"I-EM$1]R6S6*;GBT+^VDU-P4O<$('&*B+-"RMVLO1 M%&A6[H2ZY(=KHQ%529E?CY2=NRL4+#D 34_HP+BU\;%A*[OGB],F9YB%+-=3 M.-@TL1'J_9*$"4P[,HOUK!@L*7[B[>.FR1T[T)BYYKH17EEIQ9P[F36[ 6AZ M0ET:;8ML=O3D)=YM5^,&,DO82']*#48YEF92B 7D^H M2WY=V_D#@A;,W;C6&"JTFF/X+FR:&-:V-/.)G:OW<*F8+1OS5;7'K.*FB6%5 M>A-B2;3G*E]9J0NJU"MD)XPNYTXHX6HQIL2H@%M\<2"N.H0@8F8'"/:$$M)4 MI^-%O-H3C8)3VN\=O]M30=-_E#!V;SQY"0YN8M6U+&7E:]\?/SPW4>&A^FA$ MP[.E>CB3_GB$?^9&/I[?\<2Y._ >G_IHDA\,WO^" M/N>6&ST:R(^_8]")_OW@\(C )+SI:#@ZE>('/S95IKYKA8'VQ0Z&5]R5O^I% M._[\9'SE]5HK2!"_31#4J_G_D2!^ER#P;PR#))$"29#?J%>S$B%!(&RZ,T$ M;**0),XGB5],E/:FW?K[1LU\HWYAW%]J(UXR]/RA:0 '(_C'__N#^N.C6Q/S MC:0N>A^;^>4(R+/Y.A$1:1N.EFF!OR_\#._,M-F/-W310KGKA4)^=*$0Y+?L MJ]9TZA9"7UL%,2DUD\4?SG1-_2U+]DX5XU53)G6*\4\& P2-Z8/&C67F8>#AQM-Q&%O M0?. %L8/[M6;F8C4G4Q^W"B?;D+$%W7>W#5/5$Z]FM-)*K7]C:C.;S>+_G7V M+>[W6;XG\C^\,=K,N?-#/"7() YW)4F8(#,/"8;Q+P3MC,)MM; 1A4JA7S.Q M\=X@NQ^^.-GQW+D1'&O7O)B:8=+*X[9NC2,^#.TFS:TZ/8/690I2X]@'G,R> M2LUPWNT=K>J;6M6_U6>8KE5-GDA[VPR6Y9$B!)K8P-G-A@OP(L-_/.WM^U9U M-9??UK*=89/T-X =AP_A=Y"-!!"'D( MD(< +8Q+SP/R$%S&0\"^9\LM:2NPS1JQO90!=E9&L6$.EWW\!^0M2/^YXE.F M]V.8[69\"!GR6^['U$IOG#VNVJ'P?/&"SY86)U]R9MRS-7SB+%+(ZSF;\UT? MK^BT7:_D2CMMVX5%0O[XF\@^D"?KY"(/ T*":_([I @)?H,3XH-((!8*>H!) M7&0:%6U+"6W/BBB8.H&.,S/23#+K_4UY)=YI(LTUSXN]"K$'(E"VFO\ W0_( MFW +AZ948N=O=R6DVHW[6VRIPRH_Y/4>*%M^NX+9! N:H\V-5Y-IR^0H/]OG MMC3?J$41+^(C/HA@6AE@3^4>3E4P.WO$!B$'0HY+^5I2C1R_Q?;Z,'*4IJ.1 MX> 5$2>+4<\H-$<#90^1 ]A?V0ZZH4%J-K3\K"@S>P"!/!BB"#R;L MWS QJ0L^P8R0VCHT5C!"A'Q3Z$1Z7;ZIFS>AX-*%<7#!Z8-E*\P['HS!!KN. MI1Q*',0+]U3B;W)8FN>&;H[OC\NY_\_>FS:GCBSKPM]OQ/T/BCYW1W1'@+>8 MH?N\'<$@1IM9@/E""%& C)! X-__5M951)BLEE>ML&V3IS=RX"&&C*S,I^< MM/[61-4GJ+:'%:CX)9YQ'XWR>?^FT:AOKP2]F?>+G:?LPZ@SE?G6LKP9"GSZ M"6EKS/N@ GWWJ)B+5*(ZA+>80!%X-T@;"VMLJZ0(ONVMC>V#4+XI^;U!J!O" M]#]0G5JK(^UOE^GSNI%C+)]F' ^Y<'E57Y?F>-M.R53;* NQ7OZ^*$C#C?XP MWT2":F<"PA\K5.'(Q[OW?!GBRY ;A:-N2(9\H%KV^S*D6>[6[&53&_*UX"I3 M,7*UZC:8AI%BQ2QYK)A]_ M. QU0[S_"9C4Q;R?'!6JH9BIE45[+FWCX^HHC"IKX'V(@XH&(M'C#K4_#X?" MJJ.!W#CQL:08W$I2;<1)GK0M?4PV' \:?X0_366$C ]1E7PC\VHI)K\A5;]O M,M;7D;T?#5ZYDB*MC?)83G1 3'B2.[.NA,AZ!<0)R=Q:#81!-=XNB,JFM^A$ MFX7M\P/I@P6QZH%X[ +![&-9OICY1JEM7T?,?#2^]7YB9I:==,*Q3*LN*H5& MZWG\^"CQH0:(&0"[XA< YM\+[)0@VHU2%E!ICXF,^FN'+DI\: MF?/M8Z0O%!^'4F.^U5-+M,H]\164E5?C0LUZ&DQ :H!W*I!,A;]1EMAE2A<@ M.S!7ADGXN,)MFUDW*?[\7+#/594.0X&L?/"O.EP*TA+3%!G_R$,-]D].&G MGP$_$=[?&8\O5J"?YI+)6F*CX&$\+5)=.1=?5<+8C(S34)I0S >??$GR8\&G M&Y(D5]'+?D62A)^F@M!/=8I"H1\N3P3%L(:/#9 D)&?_@D2)[X5&U0VTD)01 MAVC=)QHBHQ.U3+8- P*A?9S*MU"_(DYU0V+Q*@H68VVGQ!NK[);61D1>$L/U M15$Y6BUZ#6T0+O.US=0)Q];QQEZL"O%FK''_=)]Y M?DRE!Z$4ZP(72A[;G7Z(E2\$OA@Z]0-UGE\0 O="^"E='6D;,:Z:C4JQ-EAO MMA,0 A!:G@@D3A1Z_($A5E!HP$9[:>\^".6;C3X(]2- *,;]]SOF/V5!KM>= M:BY92/+A?M?(/5OS>LU.XQ&RB/5([+B7DP\]^3+DAT!/-R1#KJ63O2Y#TH_/ M84TVC9 0'-?[O7E%V>3*#9 A6!N+!1*7E*#]7B"4F^?W@9K7CQ21/TT>^D#4 M]9/]'.&W?K0 M:^+AJ$'D[*FTLJKI!Q$9JWHP.1REYZL&2 52 H$/?9AF](50JB8065 ?!VT3 M^:%2GVUA#G5CA(P@O?_OT&+#F;JJC+C_XAK%^LJK]$65-%(J]U@$ M$VE1&XLF.AL5\5S./#Y$BJVHL+4&*UY>*X_#XGH0)L6WP]%/\ _Z\L:7-[^% M>'WE5?JBCLFWRYNJ4M@*]\-$C%<>NP^SL1P*5Z-$WI V+)?(FZ\"?T7BEU! M%5F<+)E3[D\;^LXIVE_< GKZC?"'X=9;FANOQ\I'Q]Y-W'YAJ?%1NMS-+LD- MV=*? +5AD0"M.^M,#&2V6*".2MHNQ-65!*<$K%48CA>1FCZK92J9TLK8%CL/ MDT$X @I=-!#C(WX^HB]//D=7^\)+\D45LS>)D/.UC!^E5+J8Z%9GX4DU\SA> MQ$*SS!ID"8'D$J'CIBG?(7+L I\E*&QC55^S5BB*MD+F@9;V[IU0?$/Y:DVJ M;FT=KA%!=HL+X2-(/F-;WO"S4E0\<# M'#%TP<1KN*I5\Q#.AG>9,<69+'HJ2%)4EM_"OR>AGLYB-9 M.[02"_+*+BT76:0&UX,PJ2B>\,N)^Z+IID735XL8NB'1]!F:Y&^)IOBR($2[ MS:>&L%PUTJ%R0\[T6T0T@2KYC?+HWB60Z)2+R@?8?,?_SPHD^O8 W1G'?\GA M_LL<_[-(9)Y/K4)MOE)L&\M6\]$2TY-!.$&1NF3JN-"!C]3YPL2/(OI>2-_[ M")-\^*&"RFES( 3KW7A[B3+=53 -PH1"?K&/ZVW\M:*(QHHF:;(?1>0'2_A1 M1'X4D<\8MP<9^Y+ V!:H1'AB$$>$_3:RD4/7(!S;\J $_ M#((TX+6?"#,^Z6#?&'@AQ#=*K#PKL* [P8K=6&D;H2L-HC4S4K% MSO,-$ 9Q "GCH8]+)O]*H40>=4G3+?1AS3Z^C;K\]>RGK^")O[6*U]]6X7+ MVR9:,-:OC:O ^+M> 8>2=&KE,L]%*183*V)UU-M$D^.YM(:!D8*,L<0E'0)\ M^,47']\(C[EI\?$)OI]?$!_E3+/5LB)Y:58;9=O)\8.T;22(^*!IXN%+O,7? M#*3:"^#^4+WK1TK)6V;\;X=-_7)0(FQZ*/SN'AJ?TG\ I?LUFZ\2?OO*$5\* M!C?E\N-PSF>E32,:5*/YY 0?\:0X\RG4]>/ZX^):/R?C"Y =C,N]FIWPO+&*' MY%Q3,?F1@L.7$GY8S>=Y>5Y3*T4J3SG['AC;Y7TG M>.Y4GX7)4U/K+:2>H-B5[693D(NC#9:B45"FDF$_8L:7%I_J-/MBJ_#%]:U? ME1;MFBA@@^LIP<^U4F2$BLBP^09("\B!CGZA4-+EV>%A5^:U= MG*]JS>$B&9T,(J0$=#CQ\2XM7PC\ "'@QQ!=IX3?A4(@5>NDG\O1E25(O5YJ M$^_.(\_#!@@!&B\?B+^=%@"VB3..7T^US6F,%%W'IHO5'V+$/MRX739 M6*C2NR?"^S:G;W/>*$)U0W+W&LH75$P]97D^S![1,-Z_CPOA["0;U9O=Q',8 M:URD@',DP$RF[=6;W+2 MUT:MOKUKS\'E\[K11(YY5!O7K"DRH,"\M3V5\5)-IVQ]*5@\RJ+HY+ZS214[)(V13Y4Y3/_K:-5W]Y3]R;FE[O3:'N1C#7%PBSTE.@8B7%KT #F MCX/1% I=XM[_]A!5$YF6H<@65HJ(-LFEUY@.2"PY4(8?'O5S>@'=VCK]A*YD M'Y1E[W.9SV7?M\'6M]5W2&E%+\#C>.!JX]TY38YI^'XC;6^%8ATIA=. MWN'^RWKA%*Q,'?7&!4-0RGI+V*8>-W%E/8C0 M:7-,+Q025?DOA=M;ZBAO:^ MDL1&LU)VGGZJ"I)IZ0F4*P7[D,Q+JE^'$@$^<@E$_?4PJLOT-463#8C-Y_[$ MFT#^^@M_1]4XP*?('VAI*RN\K!_@N/.-:#_DX4;CI+Z]I@;"%?XG[-A[9P'# M#]CTW?_"[4BBT#BAWJ"0FKO=*6_4(I#9(( KHB@?B):G)?#M>[,(KKE/['218W1/@Y&@!Y^IA; MD-7W<3S?^OY9.-ZU V+3YJ V'H3"4%J8B.3.JB)%*L%L>+9%UF.R7]"$IWSZ M.B+YE(HG]>-=H??T/%-0=]V(CI\>T@(6K"$"Z(4"X?"QP\3']'RI\K,PO1N1 M*HZ:5ZDI9;'W:"?X2KGP),T'1K,IWHY,22HI=9A-++NSY3 ]&&4+=BEO-D"F M@+*6Q';C<6>['X'LO:B^(?S]ARENOA5]85!,!$N=D6X/5?198N=7".C_?7Z( MV>>1I/BLA$5;%[I;47>3M>'5T+^3@CB17Q6"662FQ0?'G>7 MVUA";+8?)H,HJ<&>#"1#QRX6'[[S!<_'"YY+HNY\P7.L +I 7_5A%DLOD_>* M8,]7C50ODXU-FI.;$3R;07A8[!FH+2)=>9I:RTTL62""!\J%!9(?IP#>$,^T M[,5"19"\(:G<2#%E53=M@Y7! 5PK.IK3M'H+N$U^-N'Z_P,K-M+O[S%6?]@ MX.BG3?K#,PP_<-9?#\1X2UF!A:2,N#\-)"-EA49_<2/; "^4-44,S0!%Y-T/ M-]^RN%ISIUM;AVM$*=WB0O@FM\\85P^:N;GC] IG9_*2L[.$S7ML#OJ=RFY< M*[X^2/]S<:_/C;QU.+*.%=HJ.M5[J!(U,G,#K?*\W:ID'Y^?>]/>M#&(TOK/ M@43*KP#ML_<-V;9?A[T_(9SU=?:.R+EHOQS+Y?C"W!S-[^^PGI'-YI MB^ 2YIUWRI_'N# #\FF-@*8Q]ZFC2_G8'>5(,1>JM(4=1/^HBH:"4_JT"T;Q MALGQOS'F_XZ4U;__B__C#$+&"J\!0F?ZCS,-0F5LW&Y2%)D*_NS,["X"2^>( M)/X_,#G/8_>>%921JO[SDB'A/.'=P8!]T@Y'CV@[X5D6SW__[__QSF8G;(.R MKNK&WTYBF&?UV,*$B?2=H.#00-(L*(WQZ_^6U+6T-1VC*747<6H._.WFED6( M#0/+^A_.\SS:5-T+-N3-@'532V_F:W.=\12>U^J9L*R?T2-Q4P-$_/^T:]F37 Q_8\[# MLEO=XPKVU1__MH$$ >G,PHGAK5DIO:>T.4MT;"+#O;=X6?>/?[NE^_MP=EZ[FN):(]=U<*=TL":W__>_P5H9;K;6%%M>N<=E:-2=46T(. M_FK5[DNY=!M_R)>JZ6JVE+[G6FW\Q8-0;7_F\%TX@+M@+G^*FF2/L*XU^LL= MXDM"\I#W3K&41,[]6K.0KI;ZZ7:IAIKCX.0J$_ M*"52#:!JS_%\Y?0";X!^%@;NZ?S[G#. MN2Z#-AY41M7E&=-MA@.IDZ[DI$TV/;/[I4$T9PZ>%9WI9XIFHU':>N&Z 5P6 M^H-#6&=:X.%:AHT^2JQ<2A*A.\Z[=X03=[O'U?(]O@1A*^ M6F7]3=HPG)]D5U'5$1:7!7QR+;!4T>0[[D_0"<+\/^PW\BGT#Z<;)&N&_9BE MJAS[\2].,3G):=U@D%HAACY&IHG)15(#G(7DJ08G.RTQ@HG+5HDC"<]@IL3"T>0PS>JV 4^'NQ5M;$CX8;9L$<<6 ?4FND.%NFURM.Q?@$R4 MS9";(G6!'^[A#?HX?(UBD)[Q8)G <-!*5U>(_8@G@*"%!5T3XB7CL%! G &O M@,'NUL1=!&Q?<$C#H]I">2%[][+=Q ZF<<>UIWCO)E-\']YCA""]"=9/GQC2 MG,/D@E<+[L/?87Z6MYPTPGJ@[BRIJ8^MM63046-NE_9N\:[#"($+E0YGA%0\ M/0/OFH&W!XT"L X+ TVQ)H]_".!!:OJ*"#NV>84ND**)+" &"^(ON+ID M6#1&J53"YS56ONBG9("KZA:B'T(!%L:DG+"# )=29#P6K[I'2+!&Y!0AOGU: MQSSZ+WLD^Z'*X!OZY:O(#;U,(?5U29NGDYR4UC0;WT9E"K3_SF-YQ&;$!RN$ M(^"^L0(BAMMBA1LJDZ$1O2:'9 12B8N$ AR >G=8GR$WZ M%@TGBP7M/-] = MI-$3YB_*X!I^@&E*!F'EL:08*CZ&80[P$'>F%*WZI8E/)= %0-+,I1$^LM/X MQ:8M3_?>#EN-!RAQU"J%LQ# 0@*62?2HSR(#3D-O70X:B:/K%@!J>W$[]#$J M')I[R_Y+(\<2:R$9]%Z@6V-$/*!PD.W1,1ZFK"Q4_-H)'-#DO?AWM+!VVPVG M&VEG2LY"1\L4[UIW7"&=KKNJY&ZU9!<;Q#NOSQ4+[E_8AFF#8,:;!(\U;)4) M=@--;'6?@%NPAE0[@RNG.%:*?N0%I"UAD".3;,W]IR.AZ57,6PSBDR M$!ZS.=5M%3,Z'CF2R.+@:3[9&M4%R,K^ZBXQ=?3@11_&;MP)3@/!AJD.'[MD M[?6=*"'G&)S RIREW%-:QX-U.4XA9#K"RC W@> M.7.\AU#P["GD9%&\>##0Z7&/>'E-$/W7,4T]6O9.@Z9L!01K$N5(HC3L51DI MW0PE(C9<9?MB6H#RR(P83,,:-$%*23X]X'-D;L\?"/4/DH\;:] K%30^ M^]A>Z0_W95$6&L=J],@VL)HY>XF*G*%X=.9V*-U_SCP-1K-"E=_T2L_9\F8Q M^>/?6/B0W$$ZON\TI8UGFL7,\L%*V253S!K+E,5W[R=\>OU>T[POQ81E9_'< M$2K!*AK74^GRMMK TXP<3C,(3W=%")9$I)P\E6UY PO)+0>''S+)T>"1450Z MO4I+2QOK5@@._1?(R17-ERQXE+H:R8(GG,5O/H_6T\UPDA>"=KS4U0OV6!V^ M&]5LGL)K4:@K2*AL>VJA."E$Q&GZCXM$8L(SW)U(5+M/?4'ME/)"5YNM[Z6) M.KK7WFV\B5CR02XJXZJ >C,Q6MRFH]/.^K+Q.M[;0X*.A>KFI).L;G@IIT2> M%B%+?RBGWVO$/3VD\,M:HR 6*AT]7TQUG_4V'G'HB&!?^^PEZ%?IN6QKB(OP M :S28*6*4C9/34?OUR2?/@EM5TT9E85*XCER'ZSKPV[H MW5;X?I#M].S;*// MMU$IW!"%=Y. ?"0Z$)]2XDHL#,,)ZUG0K7X3IAO]+8)YD QL88"&)F%9MUC@ MLQUPFCLN[]'G8/H!;CU59 0L5C%C]N1$Q]P+E"PNH7U,()A*$04CG_GR,DU M(X]]OA>9\1(>U[BBU*5^[MWH)QR9#MMZ?JD)6[XIJ&5U.2UMUJ=.3DHW\ HS MP(P:/%%V$)@$IU9HPH,^_DT:6ULI>;,<\$D158+K:6?"JZ/@NXG16CF>MR>Q MYHH/=L96*?84?TA@5>0B,7J%4TK?I"8YH[BM"LNIG4YW%_%*.WK#IU04)4O3 M3L7L"L'2,!:+=\-2-G'A>*]S2IG56/"I45B.^$HHT9_.>EOA>9Y^RRGU L]P M2)*G1P(EY!$H5&ER) J]U3$:\662N2=2?H7%/$%?OT#9KQ4+9X%K8 M5NO+1+!;:C0>%CT+E3/HH.(.]R$,]Q%6=6* MF-V'?"5S_YA[K,Z-V&CR7L-]4B:3:FH0+HNH/YG)/7V32*\NEBN[X>[B @>; M^7,PN&PWQ:6IQ@OQ;3ZQEM[MZ#?RJV'';*06HM1_KO3YQ*A;KERN_9[D@=*# M/HP&RYGMK)48!HU%[FDZG+S;B-%DD)WEBN'JK"LG.]HRG1KVLQ\D5P F-= 8 M&4AC'F(0,::#9[DAA+(7)=O9;J:+DH&91^,7O&"6>17L2#11;2Q@YI^#$>JB M1_.-+6\[S=Z$1[U:+X/T4#/=71^'2)R^[D-#)+S1BJ'0&\$G_E+P":\/*)?N M"KTS '4TF5<1*7X/D:* .(7>H5;VJZ1'\5U@/G!@D[/ A;PQ79($(]/CE@"" MGDLSQ"%G!8A-)YFF/5\PW_D4 A](7T**@!,0 P] F@,@3P!8?#VRZ*VJ0MWG M#@B^^^K&O-Q6->7$@[$L/^=^AP?WWWUTL4*XF0"X7^X?[,.F?W7^\UGH^( M1,42D"D9]%1[,6;3431^(7(S?/X=+RHS5#A[;_LPW6RMCK2_LQ"G%TK5\1&$ MYHI\+K*D*S_7HT,YTA7M]$.I&NWE%OSLH]Q\GZMZ%;%-JAMNE&864I6P6E": M+R1\=.MCHHJ]^ 2.+&(PE/H\MR'3RV3=T#5II1CV+K3 &8P;6;!@>TO5C/&8 MN'ZPOJ4J6#DC/B!S09SR&IH0_@"W-)D]&IUTH7O,]_$0WHEYI1S# M0A\EI@VQ1T(TRA I1/V3.!5A52^-;LGCI\40T12*O@35] MU(T9C=TT::P%UD$I(K,7URJ9W-3=<14"/"%F%:ME6/]\PM]B=16?"@HQGXAV M%@ U%>M\NK'ES*EMC?0U5H+AG#:Y-8*@.:RDTG@#"CZ3R7M#FQ93XD=ZG<]U=U L,?KX+UK"FBC%R$"-X"MM\&!AY M%F!GITA2E3R#,VUS05&X$5:N2;8=71-".B!+@'@#[OQ/4B[%ZBX,6@4RATL& M9F(2'34JW:#06O47,U[,MP:/Z9>C5OD]*(,?,)MY(&JVB97]FE'2Q@;=/HA\ M(]X:D-T#)KN9NR9<69OI>'(2GU6>Q6#^.=[M%E;K-T2[DG/AS,NS;*)F%B*B M5!6-:$SLR?C79'DXU_"<*K.MC*:M_I,]22@[G.=#%_40'WKCHA;FR\ZZ7RH7 M110N5.NY3'C;LB?77-0\GYY6&ZH=%+OC\,.D5$D]%!XF?_P+*98GLF4/PXS/ MA/,Z:\U$FNP,Y(B#;CH:]Z.S8QW[5=&(BC($%6EO&KQK"I$)_>&D*SO9"@1% M8 K&^,@AB6UWN AV\NP^L9N9J*,Q9;1."Y5Z)+CO8-- RI)&<7!D!SB9Q5/B M>KHST-67,)+M<#!/A MW'16F!3F@CRM!6/9QAD9\\LBY4!_V1W.'R1;B!5P([+E%W#7EVV.-*"6>Z#E MEEM)JKT+C]8A(M:#I]HFU;,.L-Q3..8[VS$OS/%=I"N5 ?L10HY$]61R*2-N M[WW 14%E$Z2[_G>1_#.0^4F[G\EN1T)E?J]&M)35&S^LWZM"0<@M4? Z1*7I MNT8DY!\:(PYS :FJ&$35)M@ZYJ8% 9IU;J+K(Q*X N&1KT]W$NX_E_.=]%A$ MT6VP'5J.M]'\Y!K3576P\*DM1B#Y_R8LCV'#,96&KX%";#]6PD#VY KX9B,=UR6!/R;SHGJ2(&1>Z&AC[$L88*#+8-[ MY,^Q/Q22?F+ADVZ,H$ ,5+!W=O0+R9^7);4#)&E<%G(\F:NI90^= U(WZ% MO.V_> ".E\\SKB,(YXQ6?+@9K!=PCR/JXD MWPC3PY9(*AKJ2;+#-RQPZ& 6>U#B0C>M!5X!-V]5PPRRNP$FB8T@XL:5:8X^ M)LV\;0!98FK&=Y]=.X=Q60(/I+_3M"Q,'@O;D '@(^?,G 8,,R>O-Q^:!*3N M)3E.#,3&ZLQE3M[@1MU+3MD!]Q4$=O24)F"_SR43\#+VJMV3G2OQYB&5V$H. MU;&#"@0].,8=*XYP]S-)/28,:%#)?28%V,GT)L/'4L!2R2V:#HN$?[GCN"MH MT#M9QC)&]R&_W09@P0.4CA?:/!;&#NGCWR"(F&3]ZR1L3T462## 5"%3&JXY M.-+6!(DF*IG"HSO"# MH_. 5H=44)J)7G?1( &)G^K 8K!*>^+E_&Y>]&1'LOS2W+%*;!V)3VF/#+#. M;)"=)@$YIK4[$IT%\E(UZ0]LZ$^(R4NJHWJ?1X2SJU;B1ZM.*O4NG(75&&&A M*,[SJ%\!"A3,28D35R'?*=^G$S9W!BHDQBJN?7LZ[Y*8/B,$^#]'55&';,=L M!R" #I_\0YW6(W!L"JJZ.!<=:;VGZ%/'&CCX';P6 %9V$-,4L"+'GN?(Z9<5 MQ?8Y)8*;XG6&:%IPY4ACA*G7U5(@QY2X.DY8*=1<'$')$O#IT6 D*,I B7"[ MA]X=7A? QI#AF@2!,\OMZ8C@W: [4&"=TX=0PRL>5+@>DORYTAU)[^="Z3MG MU4 CYO)T8]RS[S2SG4SNY?;R>E].Z.U.00:ZNT"\A6#O:<[Z,*WO'+'NUNN7 MR';_8%* @QPJPULY4IC7U+%I#=#"=@@.->D%+"9U+IW-UL1JNU0M4;Q<(2I73R9B>5F= MB6@JWIO!<#=:$M.?6&7RHI"\W=RX_?L/PKZ$+ M9^IFA^BO)6\T&%7O\NE6Q@D62[=$KJK?D5^#?#3@ZKI.X@_7!"L)?P0%]L^V MOL!DE(PF__H;3 JP8%WU#QXM[*#(TT\ 5=A52)M.6H&C33NQ63 J-J)=42#/ METZI2P@!9*@_0+&C':R--E#]R*V PG8I/#Y+OF#9BX1U^@AH7N[HYM(R.!^ "X)<:M<1KX! /1<(Q'*&4[P=Q-;H86AR/CV)\-R3'98)8MPPT-9D+?3+8TF,''D MT!";6[L*2:S$%"O\0ZMI$O\>C=MXTE&\7A( M_7[S_(@()K1W=C(R/()I_X%-#; "HVX*FPRUJ0 EQN.=DZ&=W';F(R.QD"?W MRATA&.8[!,0M!#%"05J:<&^0X) R;%8DPT,#;(8 ,G-DD8C!LH3G M:6QW>/8Y5@X%^=#EK,P%N1:L_ADNA(<=<2%\RD@$T_()L]^F;Q#.1-P-_LS<1A.E;UM;E?_L;UU)T]E]/FH#;V',1. M,$]Z5ZPNKQLO:6,0WN/>Y5[DA!J9X@)BF& /^1"+_-D.PX6)-0]WQ*70"VT7 M<@R?/OM)JUCST+%>JY&#^;#=!EF?D[K?V?>S<]-;E2 \XHN*]OC(%VK#=&>8 M>T+#Y?JU\TURSE]F,QT@#"_>2_$)DPW,(\&^[B[!39B9K.E(V@+"=%P[]LV; MA5DCA__V[-A\D9],&@5U*%3Z2CHFS9?K1NO5':/J2)*&QKQIWTZ'AB\,M%*@ MC#26#S2_$HL0>D0;+&C/J<@'WCZ LRQ'B7'\QN9:6NS<5O0]$IL\E=M>@H%( M'A?3EW9PNI-?H)^"Y@[*&OYBWY7#=?KH2--+FY;XB9POPW@AWL?Q?!S/Q_%^ M'H[W(H1U!1RO29VC>4-W8[&[V S+LM"F8ZAFE-6"L0F2ID)X,;E/]UO!<+TX M.<;J3E_WF>U#DI<1?N2.:PH=H2H*GX:3O;+HYU"R;+&(GI3!1A?GH]RL^=.G?&,I')!;Q%NN',51$*V,!3@3(@-_!0%MA*Q/T.FN[H*F% M$#Y%ZU[KH)_0" 37@3Y6-E"G&D*L L3Y&,3J6M!1SE@F(J1A!&F T^XI^Z8: MA+5.-#QA!"R&33+Q[5D&><3Y MN!LUXL0B8B+21A1Q_!-K!*J+O;@F>A;N\YCG-'WFP(\+NT0-=6D'>M'"6&Y, M8\![&0G 0 :Q+$A\LB?0Q0%/V',"V,(&_ 3'6+^_TF H;_V%H#&YM#YGW[')^63G6(-FFI+8#2B M06 U1"4@ZBF__L]K7F+.L_WH>EQ/SEJ-:&Q@-LIS[;YQIGF)X3[3TT^$\90K M/G9RAX@90GDDZA+"*75-W9=28T_D+*VN3P >%AFK.*5M/K(V0DN>HI&MHMHX MLVWC6:2UT='B$>WS^ 39RMUYK"'$9F*M(R_$F!%$H\CZHXYCK^'VLEVYNQ-^ MO-#*9!O+;"5BV("=I$H+$_WM_.$=%# ?&Q!H<#)5S!V;D]@QDFWISA?4B"'? M[-DZO*?T@^&V#=TW4"S#&9CC.Z23?G,7X4CD+A+]SPLM@SV:JN>5$$X-N*.S MD,YG$J/]-S46@3%?-=*814Y>[%PJ#4F#''0P]SVK]K=:)__828>^Z*1)UV/R MO]_<S"7O](G5MK1U3DX7]]QO4/^>I\.8&$:59.J\427?4#65!_M+_[[R1<7 M6OW[?V09H?'X]Q;^ ]?VHNZ_9QJ^+WZC\?B+Q#['=ZKHTC7]&&*_\IJWC["$ MMZQ;R%\W\R/X^PLO$,W'>BL3?F/*$5V4[JV<]L,6QS\N_>/RZKKA)1O2_A7N-A9LQ]\JG^;8_N&K;6;/IMO>-W>CX&_\ ()&OX;T6JGA8XX7C16!64$1 M(&_WB)?K[RGF+HINQ$'X F7]*:F.F%WBF:3"$R(W!O3C@CD.;KJ9+DX881W MG&=0GE#,\^_5G&C#DQ0 R8]3?<2*T=$ +"AEQFXCH54PG)%BD&1!4EM*T4AM ML%'0TH.D<1H$&+JE1RT=:@WNW4"B39U7[H>!VN8N'O+%$9(D7POJW^'7L&X? M*EX+4O@)2K$YH8<0UVE!Y"5+0%SHBD831F'U\;].)J);-944@*71:DXO:%86 M=710#8Y5N3IJ,/'Z\!4:' H1<,Y7GLYPAL=/JYPN.81)%M. L?V,4,K0"69X M@-TZ0_1G"%%;Z2I)W9IBL[F:V%23+U6!QNC0BEU35 M)'4C6;Q?@-89'6XYZ*2RZZ4'=55)54B=E,_'^Z)N'>IT+F*;Y>[L'E<=QS0? MAC2?XS56^9$0(_YE1X\GXII)2B]4#APK,DN@(Y&43JJT-R+W]-R[ M@=*!VPO&UZS(W%2WC1T[.S4_I:.&A!P+%V?%Z516U9(]D(X>7TF>1SK+WAX&5Z^$8+*WWL;[6RO&]L/ >:L=R81R23][FI->S;/<.M/ZYRT(X^]?J"*PR R72%6 MYH!ED^ZU!AU**N%GP6+-A[31I(*59A-I*HT5P;F ML5?!@DV*JD/'M9&/;I=]"*@J24 [0 (/4[77K!(Y\K MYJ[/UOX!XE >39%FY$<_>)C$VBY8RS3OR08*U;XB15;>T5*5G?+*^(N\GJ0; M!9QE)'RJ:+N#\L0#=[=!)Q'0#ED=;PW?:CF];_>G\.KL]@3/$ IT[%* =KQ& MR^73.B'P3GS7V-9D5A4#V$RW+4^=9YOD[N,_@-J1/-5(K1.H]8H/+I!G] 6G M.9N=C;!JBN9 =NQ>[U6>UG9GJ8Y,CW'FR%-6&E3)!1XR*R)*"K#L'_BP3X0\ M=]H[O8+-_Y3]@B=N4AW W5:BBBMC=*2W^%V)WY3,'O*3V?UD=C^9_>$OM"5^.9GY%U*?PU=)=M8/M%!JXI\$4AC, MKH&>L'T68V-+>5EL=: MZW">ST%%V)EMNPIIV"H84A4&K-S#*5%Q23,SM!N+NWQDB.YLSMD!M'X^ M+35&+3RW=8>+33 [3+'V>B[A(6&NU78XQ)XU3ZSQ$6+:%"M5].)R<70]UEGY,3A>C'K#L/??Q10KGIT(] " Q/JQ$G795#:AH-V=: &2@##T=;0<^C6HEGF M(3%1+)4V(%BP?@U72A2_I/V.UW2$JOKD0#TLM4!8RU'N7:(EG:')1B*559V" M/A(T*9]U?'%^(EN,)KJE,/O$W6E7LR=FI6MQ8#[#.KM,< 8&6K..1-2ZA-J< M9"=&:$[J^#N_.#1%VXPYML\Y":GLZ_9>:<%RP<&^AFF=*[(8.'C ^NA^1IF' MO2Y7- &B:T[@D=T5%*LD12Z\G='VEM8YJ"F( MY^(ESOXXSSYNND9M*5< $@LR#<@2'E?5,PQHT02B2BGGPZ8'V M-F)5\9*K1]N(V\\)L=;5!L$'M&KUU;VNI9']$GF:/1_I%OMY+\^>>2%KXS:L M$\/[LFP-1K6Q*UB[0 4ERD0M1O]ULITU0V!;[!8S"(8]U0R"U81 M>O7(4[G_G$A-H%HT?U3-X#^PYE=87@H5L^5]C(Z*\<:RFA1L4UKEMZ&G3(*? MW.KRABN*D=CRD8@0[M6&*!WNF59]#25_3BWO>0_I#D,]8I;KR/_LO@"7"=JQ MTRF.Q+',&?>=UUKD#C3"AF:1*)'&">?2;HZ;GHG-IG M%IGU^_RUA>/^W/E]&"#G*L,K(%^GHB_5G/9[BB+:4?J 5.IXO MXB*0Z?%'>C%Z]VRD(]-QCL*!SX[0,RM)VM-Y-@)\0(P(:-O(K6-FD3J]GD" M%_%*6D6:N=+ !<@M5-LD13Z!15T0WFFNND-!G6DX79E.U_'9>S;A5NH#V+H^ MIU/TR P3XMJG7A,8!AXT3(>-S-&>SJW8%2L=':GN2UMR^KZ"3QJ_$HHOT;NVNZ240?B(Q=)5=6/%Q2D>N3IZ2C0!]+TNI5W=-1H4ZSOD=>N^>S MBE@>)G5"**A##O.$Q+KU$FM"V?FWJ+LY2-S-CM?<4T[>B8UP:\<>>.-H@[97ZV1[Z&9<2%NR2"00 MXTJ[+)(-<7VZ4*"/Q4I0ZJ72RHO6N)H".?L=A,PY78\/9E+8W?5I[IXTET8[ M]^V9][H&O;/5IRK206=9O/NP9\3S#$-Q4# L6+U'_9G7*"93F20 HIBR\G(( MB ?B.#=V$.K$Y")(R7[O!&;/N:T27 .96J*D^"'<96OD7( .Y@Q/(B1'6RDZ M3"6KDH()B.N V= AS9,B43$R3;62*@9 M>X"-@C>/A+F!0-1EV39VKE>HGTZ6V(*6H*8N4Q#"C5@ZOU> 0JBK0Q?[CL;. M;S2%)BC%NDT-7,34#2/RV-E.>,C9A=NUUU6AD3J-9]R%0)#1J&@"CD]'+! < MX'1G4\\1$„I^-[7*X*5_3K$RH!L@M0)NVU0&M1 E!8W^8L@0+)1DZM#V M#Z_P2E)4IP&@Y\T[O^E!]SZ_G]^KOM.P[SOU?:>^[]3WG>YY0W_%=QIYD^_T MQ#M>N#IR#=]ISG8/&GS0LH@@-V#9&_$^1)[@9?"DOA#[_2)0Y,1=L_8>!!_W MNMN(Z;^7'4#U/N)+"NR'[.(A.!J$R2("7_ RDEK-^^H14]9 ?]20Z^6ETS*1 M1U>A_@?:HLB!^3S.@M>US_T(VY6"UBR&G(:,O7A[T(E,VXW'0!.LRT$9UH6;[KIV7?U^?V^=UE=".KM74]O!*$G_%S;BP*F1>K4NMR1YP(T( M)FWO"0F#HH9WRK8((@"J^PQM/1WI),@D,0.[:5OZ&G #[V@/JX63:R5L\[)Z MP4<7>!I9[2F^KO_*(7EL%SSL)C>W25[1#!$,9+[8+>4>"4@D*!UKM$/=<,.K M5T"01">ENJ1'C65C@;4[P4IX"TE:5C[$9N*&Q@- M&1P'3P'[TZE'[PF^]X1 -9).XX[H+DG)F./$/9?NP/UZ>L\DHPXO<%J!0P) M0G[W1,7>X_<$+D1$R"Q%A@.8#@L[LNJJ;IJ.UW87;/Y"?L/8!E#"C?S8[1]Y MTOZ**8>K=&W7E$1.*ZSR,MR")3)0D(R&.>T$T"ZZZ!@N90'_GD$*X5\:V$FR7AA>$@6UX=-Z#PC-8"G&PCI(G8+K].['D M!%GURAE\V'+4H*C6<3R-BWG#\>%B^D0X'76Y-+G13H/R*A9N) SE31I"[O%! MXTOO MWJR?A568>#]<=4^ N7N>CG<>MU.N%KR*;G(%/3Y/)-,!M^]$%K[%41W_9'1& MK\'S 5"%:G8&R1US4H]VA^]?U)5U2A(3G]:5N-OK@CUD-=H-U]/NU!LRQA(: M7B+I2_;:V5+O&KI.UCV"579[:DIS-WY.>B4EQCW J*?G=%#; 1+J78<#AS/E M%CH4DN=UCN-/.@MN0)EPDR(I0 Q;B>ES1-2G?76*^B> SMET,',@A68'$>GA MH7,2).6R#G5Z$@F]CV^ZFPKO)NF,KI>$=&(]DE"[0$F3)>2ZX"4].YW!N+ T M?@.-TH+QD(P;UN9Q[RE,<:%Q3QZ,FXT/;\TE@)9K]Y,G;W)P49JE,%2S4GFP_/ M!V^&KM$0%8A89-FYCJ&"#TTV)-/QSFH(;"RL9*MPZ!M4!%.<_X2[8*?3O9;F M?CJG_4K[D//6(/"JE\X062HM"V6 M2 DA^4G2SVZD)1"Z!N>YF^PE08MF M9MBMI0ER4U9-FK'J9EI1C4Q#E%WWUIF:;]>K(_^M^&W_PW4\"J\=4VC# MTIQ_ZTQU\%7B!C!FB"(%I%0,"?60'9?#E,05;[VG',&92,K, M0E6I8('_2> M7G/.8"E>=VSVWW$M:FF83'_UVBLLJI-JY",(NH&0%6)@.@:Y5!BRX>UN5CKUROA M;:[Q2ZT268?#08D,P>W@?J_3_2<1]LXU6;QNM7%+PLHOB[3/""NQ,=OV35&* MEJMUZ;Z!YJ6U-](^&+FDSR*)M;\'$)[T"224*="E%3;,(]&R='F6 04>=@S_ M1 ;HQM1'/"'U^64'-9L9(24&Z];#!E6FJKJ:_/&O=J+](@NWWOEE3+=^CDE# MMP 8>(4G[W[NKJ7=]:N-\Y+,2K[ 2\VV3F49^;#+E6"X^,G.F4HKV\H_%A[; MPG*R#<7U7*WRM$KC4^W5G1N[[W[+]M4HQ$IX%QY!,HE42(H:0]#6JT^@$:0N MO&,Z20]>G(4]CXAA\R6APKQ9>S%?CIQY=2 $H;BRK5[R",]#SS25]F=*5H%, M/@Y+GS(\#,J0$>3:6\%CC 7[6G**<;$E)P<4H"8*":AV4O](7NWG<<3M1ZKQW/UEJ2")964-O%Z+4P?Y2H)8/)*8&]?$8 @!HW@FF MKZ#[&G=@9%Q4CW1>M&-[(D9W#R4>1!?X\13D80YW!R!U4TV]@:(+*"T*@A-O M'7[OGD!UW2R[*%-PL&&-DKP3F9X*:2";YZQ:$0,<8=5)H*M%3QQX'8F*Y1;V M4,6S)66PX"<:1P'@B6VQ$F.K@O6<<_0(RPV^"SQ-@"J$^W3:@\Y'GF'J#,RO7!/5<[49H( J@QO0?V M-/,=KH[W#.P6 [$L--,E+MBV*5)'U&,S=##;<\4=2)TL$^^C8=H2]9 1]Z.I MG&@D[U23VQ)K""A24D8'C\:;@HEAQV\LB]]P@DDLFO1C>3(?W7 MB^:=PZ0I M:R@:2 =2*@N8AJ0FJKHV@=H$-** Q/[@W6ZAA474/2["!S@XB\A8O)$W744-UHNGS@DI=[C,8]Q^AZV-6+7:%N\O%FY-YD_B[>!2DS/966O>F2@\W^@_KM=_ M_!N]BYU=[X!3M854MCT'GW]TT>TW]U[Z.B/UW0T'[H:H[V[PW0V^N^$;NQLD MZBJ0!_I6>5*DJ3CE6Z5$N)M-S7.]W@3L_C\H,;A7ML7'9CE?G?-"(5=H+++Q M)RM23>,K8X=7ILRI&M*ZM;RX3$P'H7;^<317&H/P\3.SDU5S,,_('7[^W'Z: M91:Q1-I*XRN/GJEM5250OUZ4(P(XF00.7XF/^\W"MKDR M^%RIFJ/E>A =\(=7=C)28M9]GC^*63G?G%9X711,N/+HF9%>H]U7<[S$;W-J M7J_+[:(Y:^ KC\:9K]G3+&KVDC/4W6:ZPKUJIJN-0>SX[;7.=C.(/_9ZO*UW M#:G5#XL;(3V('U]9J,>DZB(MRH(ME/*A\5-">JI,!HGC*S-Z/QT34Z6(H,Q; M\]E<#T_RJ#%(GKA2S$=JUC*[%M!]KM.)EA89.SK!ZNK1EBB.Y(JP\8@Q!]?VAN'^L5BRR@+R_M6(M.JJ+/T:#T(A8XO'2_-GJ#GY-#6;4_-A+093 MO5E[6[;"3W;Z%#7+PRT?J57#VUD!C1^$/)\?-[23U+P9KZ1\4K\EI[X!MQ>W**FCO5#5^_+R5M,:B.)K5Z9KU-B^M3 MU)P>=EMQ>QW,S:3GV3I=B^8SEM0X1J#^3RP<,*7'LO&YTD[ MNPR%:[P]+A=*FT8(TPSA$6=)]XH9OP?:NF^=M*!\&Z(8CM=RRBFFK.H0=6NV M\0LSJB[/_G#IB5$[[!"4*_?DS,9G\\G3FH.G^%ISCU'WQ_U"25?'+YR0E%3\*8I MLA>KW9F5V(ZZ4E>C/(D&)ND7.JOH?2+>:TS,8 +M.H5##A+;(,Z7E'T?H9-X MG5,Q'< YVW#JY2G&B$2U;P&VDJ&PED%3:38L/8\ ^)(YO>-RMMO518/:H',\ MY:G)(0T GV/,:']T(V7$*F5"Q@X&-3>&D#YF_-+P/H6 M$#223(HFMR&:3//>D,OONW0.1.^/%"$,]B MW5 H-$6[+(+C2%J8Z&_G#^^@X/!C P*#6:8XR#YNQ._Z,#+0B#\">RS#>2M[ M6HC.Z&R?R3V0+Q:^"T?^\T+?1X^)[WD^N,#&JKYVEL3Y3&H0_TU1-O"VOXIN M,2B3O-BY5!IB)K0M],&HUOEM#UV^[7L8Y8OM/9UE/]MW]B[A;\0M;$3X+NKO MPPWL0RA.6N#Z.W'UG?!%TXULA"^:;F,?0JF[4-S?B??;"=+6F_SO?;36SYLU MV&UO=OQ_J%3^6FN 323X\O_[(_S'6YDR>9<(?^B")%_Q*+\&#^]A@3M7JD\% M[T@%X=!=[$71?'4J\(8+[A.!+P5OD/Z31TOPTN92L/+XOT?<_F[RCF%-3"4( M+38<@3 Y)QKJACD!8,5W%8-77HN;)!,F$+\VF81\07GS@O(ZBD+L'%_,\5-4 M='X]HM$[_OKJXHM^G3\5C8H%<%";DC8R_W+=.+_!![O V;__1Y81&H\_ERSR MMJ$II&(CJ3VO;.!O\_T.@2M/;X_J/X6U"2QT[6G_OW>8"(-\KS 5#Y\21YO7 M%QN!J&M/>/I[I[L>NNB=#)2SKM3,MKU=H+V,=)>G\'5YQE$L#V52>0BW:OUY M<8;&T8?NEL\O0ORT=Y)%CSG>]UML!8KBW/9>I(W MVW"4?_Y$6< _"%(J/Y560K@M6L599-"YER&:.$YD0>(XKNI+*?T0;F=#7[,I MWO2UQ#0<4Q];\.$;*/&?)\,^=8Z.\?U>"LSW%U%OTU9(ZJS#)$7&(_C:%N,0 M)J7DY6,^VG\RUZ(=2K:,WNI1FP\GGR>EVOU2=3*:UF=BMFMI&7TUC&0UR*'! M&DLD$N"3'ZBR^+Q]L[S]FM/WN_#V&]6/"YF[.AVV%PETOQ:Z5CBQ20P24^WY M$YF[7@VWGPQK+,^DJK5>-OGNII9,8^;&*D@X'HB&7V+NKPFX["*"E;V(8-_* M^LI6UGLK+3_2U/H]U,5E+&^D/9-S^5 SV)3J/8-?%FO%O"&W<^+P$TVMH-6? MEWI&;R!(K4&QDYA7-OD1)$2"$H-UF(@/N_@"P<=>WAE[>4DBQ'J)=:B[Z<5% ME$PT"^UI7^CIGR@1,JOR,%F;BRUAV>!+Q=D<_Z*2,E3EB%"K ESJXU%$Z6AAET&09/P MM,P:4Z%1>@YETI]/5HS&PB:Z"9OKX>J>%PJMK5@OK<=V,0,U0[#Z$0N$^:@/ MH?Q #OV!$$IG59$BE6 V/-LBZS'9+VC"4SY]"RSZ%%3'J?7C\TA<;EKR4%M& M8[TJL"C1!\+)^+<#0M(V'I(^A#Y4 0Z**2P:ZU&4Z%RJJV>)J65^MMY!,=5;7[%-\39LD\'QX\Q!.A5OC^ MH9K&LH7"-:G4%X9KW(*_I.[-'_^V[*&E6Y+JVX#?WP;T49K?1&G.2A(BR2XW M#W/0V$&F/7SPK:]8B\5^LJCW'A8/?+P3L1Y;C9*NP\\#NM-69G,T+]B8<"Q:$2BPB0<5:T"Y2@63J_;U!U[98 M/&N%]VJW6+1?G&>Y?!O-M]&^+_P#(O+/'Z'QO%W7497:(ALN-H7MF*](M+#5'F'^3[R00Z"VBY M)WZ1T"6#%.R'V.)((!0Y]GK_]75!F_VRP^K)(&-2B=FW W]%#.[)@ B6 =!P M5$77$7KOF=5][8E=WXB\.04)&J&]6=SE>WKQL8+F/3Y>MI.;EBSD^60:^N* MEA0*A*+'O1Q]4?"S10%3?:X]L>N+@MO3>GY+%JPT4>\LE(QNR9@8O<*V M1=II8=4G% \D8B_) J+Y_)>4T/_7N8QU*/@J]?\_MCU.\K@E1,G3LUFZ%-F" M-LA?LYW+!?%O)TG4VW4DDHBWE\MN82ZT9N)8T1YRB_I@DC<6Y\C"U-O&.$)FDK[)F=:UIJB-%2(IH/1L-IP^AY]R, MK-EQ>*"[9K3A_8[J6,<5;X-V-]:.(XW$3X7LDQ9+EW95HF%\.CP#9L%MD62P M1DC'78QOK'\+EKJ&C6=UKTA#UN/^L]JUM.0I&MG0&(D-PC,&TJ/UN&V+45J/ MI58FSHN5_+#T_*BT]6UYXK=M\=NV?.$"Y'YOA*^^$7YOA-O8![]MRZWLA"^: M;F0C?-%T&_O@MVWQV[;\D#KF/TJ]\!O"?,7$#.+_,NTA^%/ G:@;>$=-OTCI5Z]) MZ'>%N;&(0RD;"M*T)!17-DZ4U;#*=IHY50*I ( MOQJ.=]OZ=QZPMI:^BJREG2QN\0^]7- M"K]AR2WJ"<2T\#)>6AO5*=NU@>O.RZ?&/5^NV>-L2PS6LJNLW@X6GWFWPT@\ M\5+]8)^#?S8'^^C >Z,#;V+A4JC<"_,I+LDN^E4FK8$"0?"T9>P MO2^ $CB.A:&NV7X/D!NV4SY_CCZP\+O F.N#.6M\S*F;6E6J!DMCOA*55FL MYY-BKO70H)U L)K ?Z":\,UI^$?PJ0\\_"[P<"FCUM?)?%O2GA6Q@N1EK;HN MQ MYU@\D$4C$W]]E<&U]5I@O5'V+$+=6K"G4+L*O\V$&WTCQ88:/@1D=8'%CX+6+B0:2.B5!HF M6KV:N RO9NMJ<5&*M5B[BG @'G__MNI7@1+6NC%#A@EL&$K\@W?!X[%0--,V MH(");\"\NJKHX4U5=/VJFH1CUG0I)WIQ3\>MNCUOY(Q;N5XJW#!* M?.LY&IOJ,UODVQ/:QB*>?*GHO<_*/Y653Q4M_(FL_'$0Q=MX>5#5PNUTM946 MMKJ>W:)\;#N5&[2'1>P#(AROK26WH446%/LCFHCJK1;FFS_O;/YCGGX;=(E#L>,B3/#?__M_]FI,N3P.=4QUXV^'D3W+QU8F M3'AZ@H*TA)4$!<#_EM2UM#799!.I.[?0PM^N+( 5YD*PKO_A/'_#JAQM&M1( M]2S<7IE4=MM^I53GRU=*:;$]M_0%5#B([V]Y-'27.-[S#VF'$MGMS_]*W-0 ML?(_[5KV)$>09&X-I(>ZE^_.OL(*/JE&JX^YK$[*RIHN@TC_OG?AXC,YZ$>5 MBU\JS= MW=_GTE6NT*R)]0!7JF;ON'0UQ[7$3*N4*Z6;):%%2C>\])#_'1K< M?_]]];)JK2VTN':-R]:J.:':$G+P5ZMV7\JEV_A#OE1-5[.E]#W7:N,O'H1J MN\41F#;T#_\>5IF'7+"*0*7W-#:K)3- M+)[&P=FV&^Z6$O/$O%MM0)WG/R@QN%=F>JK2:C;;2[%2,85A.?>LY1 ^-P:Q MPRN5E3#O9<:-.6_S:BC-8P7FI 5?/#*\>;1[25TG:4KT3KPT)^D2@D M*A-\Y=% GY:S5:Y6V3Z+E4V\TT)\K=_5T_C*HX'&5MMF2(X*@YD=G=QO4^M2 M=K2 MQ\/=*2)VZWVH,?XKE@PC?OQG!\5UH/(\4#C2CA?J#_5)GQ0T$*M]#Q3 M3@\@=9(_O+(C-/G8-M4J"9(AJ8F.T>VOII I=70EWV^+XV7!&/%A.X-2^O-@ M6 I!*L?1VQ_BR:T@%D9=OK(NSK/==005AG#ET3(EXE(F.C1K#6'9ZNK11.6I M%119>LC^E='0?!7+MN7G66M0:@SSD2GCJ\LI1-!M%VH3SSX54K)MC+ZN,PN\97'B^]7H^LU6@R7Q&S?&]>STF+ M9%%<#^+'RV1FV\/'BEU[GLWKLEH8/J%VM#>AX:@'4PJO^T97;=6$FIA,)YM/ MR["8A=CSHX&:=F>Q-E/#D+"M)CJ1^ -OC.+K0>)XZ:V^O!6G0B/"(\T>9PQS M\]#=0J#:T=(7%K7JLSB+)(0LWK',<+99J4$6*7- H55#S3Z/9B5Q'N'[CYUD MJ/UP#V\_6OIL>*G9';NT%EIB-C*2QH5J/PYO/YI1ZJG5BYB1IBY*0[UA"E)/ M#>?ARH.E'X3D42263&(5-SZ.#Z+C$6;MI(P?@(:I9#C.QT)#=#2,J-5(Q>]G M_5EV4ZFJR?"P5FF?E#S1"M:YBXMZ:2855:O<-9[GF>JF$T*P?+])OND M%>>Y.4B>HSEU-P_5;E!YF,SL:A"M.\OH1J^F\95'/6.ZKL\?L\W.ST&@T3LF)V2 L5HOA5E*8)PO5=GX[ MN&^.X,JC@29%.V>KZ8$N;-MF9/*\74[%+DB4H\4OA[:6:-1GMCAO;;#U7*]V M^F.04D>+G^PNU%8ZETCSK>:B_M!M![NA$5QYO/BS22.U[D62T5FEL5)"H_ML M;M,%07$TI%FH"RP7;#;ACQE4*ZB1T32FI1U%J)M"Y@5:_7S:XM9::M MP9 _NK32&>6*57[1P4I$0;(V6GBRA9:,88#4#I95-*?:>E81!;M7RDBC4&X; M%YH96;=Z4/XJ;\8 MI+-;/(+(\6!U*3:IZLE85(C?=UIB8O%4& +^=T*HA)&QL6LY_DGH=KOY?&Y8 M"$9 3)^0*J&K2+.:!-@5)]>5NL"QT'D3EN91OQI?!9#&1'L"E(0JZ$.T[ M;;UV=?A];>OW:,]2T/716E'5S^_)XKSYN E+HC_/!0=!,3C+>YN3L MVF_"\DE-6,[6D$O>I?P"X_N$<)U2[W>I%VOY^1OQ:1OA[\,M[$/J+N8WH;B% MC<"2R6^/'\;WF\;+D\(>"OT]Q.:C+R&NGWN&GQ^XSK^+O&Q%5D^KD'9AYW,/V#/ M;[M+61H/!P2TI/H[_K-VW.3^R_E[_BY[_IK:>_4]?Z$EJ:_;? G=)GFX!.>[ M!'Z$UO*M.@3^IIR[\EIO1DF]:<9M'X MQ/ .VL\7)H;CYL.^4O0EE*)/,0M"H3?WC/WPZK2WU#/V94ZX>@&!EP1 $RUT M/"=MPD&J^-_O=R*$;V#BGU^4^>Y'3IMZ@W_>O)GB\P/G';H%N>;3N4_G/IW[ M=.[3N4_G;PX5^;*S_I*&NJ A8[+]!@;VYYD37ZZHVFNQH=^P/AK+4(4G60B@ MU8QM*AHRS1::$*0UO5', 52-'U .>" NR4&G&8PNX^'T\\QNM!?!]N#I/A5> MO[FNFI,6>Z*,VKPN1@;=9',R4U!V)F\>MI-.@S6O#H53@4CBI3KT7]8]_HG' MI\^GO\^GI"Q5^%UJ4_N$YQ.>3W@^X5T>&OY=]))=68VWJB6-X:8RZR:DT&Q^ MGZS/BTHP.<]//D(M$:V'258JS_E9/+D(V^79JMR42;6T\"5ZR2^6J[\-?XR@ MX;\1ODZ;<'B#H::E::O@@_$]+^_N>;EV.7?'#7 M7I7KZZ=O-.-?5T^SW<[S3$LI)7&;J(\BC_5'?2N\O9'3"^KI,"[RQG 5G(J% M;GJ0S>U;7UY(^K!/O"TJ2V4WIZ7'?CHCA>22(1*VX3CR2YBOA2[2D M3^B^Z6UF$8F_R(2>.Z'#XX4\^2'=$;TM-KQ#='IN*IJ*S?C@$%I;[$T1[F'- MB>/T=CK4]A32^^?XSRUG(=,R8?LY!7^A& 1!#C)XB1NKFC*W)X'.$R4$OR_ M9DLJ-Y1,Q>3P]4@R5 49W'J*-$[&7"HI&H=6 #' S_)4TB9XVOA+63%D>VYB M2I;)%R/,SQ;BK"E^S831$_?_L_>F38HJ6\/H]S?B_0]$/\^^MSNBJ .HJ+W/ M[0A4G&?%Z8N!@(H@*(/3K[^9"I:!5GZ*K2),E<4ZXIUQKS2VRL&Q*F MRHJD+N&W&J;I%M:3W*5)XBN6L%$DW ([F-J\88'W2V"S(K97N06#E ]VH<+; MFH,A&K[>L+28 *!+8"DBY $(.K1(. 8 7I$L; )(#C60E,%63 N ]04S;6$( MQQL2;X('1%E$BS,DZ#99/^^^ QU%X7_-]7P"/T$725=.LQ=W%KB/GJ3JL5J=L^4IC: (F;I:%*P/[B6G2V__,7+ +K 1NT);#)CFT5>?7(0_H0+4%RP;($4\L#9)-'^#!^7N]IC5<;;0A_HUE\).)H?, A,YZ M]-/P,H<\( '_'/=5D6 0E,'T!546Y3 Y%#0&;H*ADACV1Z[*.BKD@"7[&)! M<-H#[\VV>:TA"0BV!J^9C@@R'4(<\C.P)P$]++Z%4$"[MFD92P@,>4/*\FP/ M,-)"D"1(DZ=FV +T7_@]6#R@^3V$@L,*$)A#^8#!P-PR(##S-'/L\] \[J#UFCM9O@,I#**S;QOPCQU6/(VJO4) C7 F*+'I150!+(0" [8L+9 M&> /Y/E&'-R7-2!QX1!S[0LVKXGWJ[6&RFC@:!C($-P, !0L-7+O'E&,X* R M"J:PR]4KY]:WO@8CW2JN0K\&(AX@XAC[L-1\"H$<* M&#PQ?Z/?P-/23^(%!U_]^F88(E[#/H8>&D.O82]/%1]#OI1[>@Q%7T,^AAX: M0^1K]&P];A]#WF/(EW*/C:'H:\#7Y1X:0[XN]_@8\J7<8V,H\AH,^1AZ9/<; M^4K[#1-I)T8?0Y<8IOYQ\] 8>J]AGX\AKS$$SB&? MA^Z!H;^L,?-NQ/JA6S_<)C9\]13K@:$3?^+T$<;PU"A5\+[ECA7:YN' M';>)^4PJ_FV;1#X=K5"O(?JI:66W>2YVU9YSYVW>)R.5CP'A/7OS6P#A/O4& M'QX(YZVF;P&$FW<2?P8@O*?[/Q,0?/7ZVZK7'^^[2+V29R-*GJM$*4,WK]=> M\WR \_NAGWPEO&\N>+;'JB#88QNZ/D3?;+H1$1"OD=L>@KX,>&#T1U^CM]4# M'U$$?"ES^/.>$S+P3G*6]T0PALU5G0NS'VVS[*N]CXK=M[N,]VZD\3ZQDQ"P M@JU95ST.GQ@:]R0=1UM^8F"]+44_J4X_,4SN24".IOW$P/)ECT>DXVCI3PRK MFX@>^KEA\O?T\UD-_XF!54:%2'S=_]%T_T_:ND>8_JCQ2Y)O\<:["6#1U]!M M(\.7T/[9*C _9N6$DZ=H=]7$WX>[,<[>O\@C:.+9<\'J#T^N ^D4$D2'U*77B?U M(>5SW_4@Y93*\"%U:>??3[W>0(II[2 #ZF+'<-/!ZF[ MFWW.E8CG Y078NJ-II,^I$Y>KO A=>G5O3 UKI'#^8T(X@! MS*CZX&G"56\C\4[ZR?DR7@_;/NI\->:OUQ]JW2_XPLX'J'OP^ID2C+27C+*A MBS9:G,LD;N]@CDQD8N*LEU8HJ1=NU'&EW- _WGKJS I1]OR)EE0S7%&(89=B M67FT5*<*UUN,$I4N#?MVAE^BP1MU[;Q'^KW/WQ_+,3I?A]CG[X?D[YW[$;M) M5B#OE:/U&?PQ&?SR,[U8KI()0N5D I=P,1^=9KK+_ "P M/&PL&WZAJ!L=ZO?(&KP:SS]#$N!%_J8/]_R[(5>$ZP.28&/@],$[DT&UV8_W M:8G9XP/FHJ&Y;$T@I5[?53(Z&T2 :A M!DL&?_PA7XFCWLC/G IYX&2K&SP@= "[9TZ,?(ACW%M'\N$1N;D(L1D1Z6G.+Y4(11ZUFFW*[/(H40ZDL]>B9UV&6_GB5T69 I'=HBT-L8>8E&P[?S-GHM-*[&*X^0 M=?LNKWS9=)3G*9%8<'FJ-2J1*B M\O+@-LY'68U00CQ>KA'-I3!J1F9LTQ 0\0>!;*%>0V]['S]9K_VQ:,6C _0Q MTXKQJY5B?[R]W1_+GB7Z7BG,&'2GJSF M8ERX:[1%P0.450V8ID('FPDQ%Z:5=KK2C:!HRTN0(OP4*E\T^$G57UDT7.X. MJ93CH8JVBL24>!P?5:)1O85GYT!8T#<5%GY"]9<5%GX^]G6D16':(UO=:+W$ M3<6>$$H$A0$>F]]3D9:?A*0&'TD%4CJ4%C"P L0%&?#3N#\5;GDDQGG,V,H9CJDG M\T(\9=:61(T.Z^7@0#9,YD8IWF0VU>86J5* K3'+#FG;V5)S,8"< *,LP7.> MQN?IBOL0)\I#M,&]7OSDFP9+_,C(.(5MH)6E.#JZTU&3:KN%1=(;#&$GH:]].24@S2=4GDHA9DC#4=%4?+/V+ M*E\M7\RKT,IC >*I7*H;QJQO^+(*][.6D%T^5,/YKE)CQ_%(L"A0P54C?==, MU%PSQ VDHHYSRS83%:IQOB?* [A]E(D:(6_H*O$ERR,PE(>1F<<"A"]9;NQG ML4PU,$^F18OC2T:OQPSJRV9B#@ "(S;D"QF\4=:[?S'F45C,P\#.8P'BN?RY M[PF;3CXX;X8IIL+RK6QM3C635'%YUX!/:E4>\X%Q?Z#@,ILD2HEV>Q!G@&AQ M+M2$"%^-\47+K>)"CP4(7[3<6H\AD^5F=Y6MTEQ*&D[+@Z748 EH,[D7<4(W M$C:/3+JV D MTR@J]G"1+Y2C'K=-L!C)P Q)18@UA_+$SU'_.]7!NU;( M#ZE'N([6QX7*4_E&UAQ:W6505R166O-(+#(B*<)NY">D)I7:YGU+?_=#@V%! M+Q =Q68U:V'1 6'<&71) KI<0Y$7,ACUL]-\Z7)]9^OC0L67+C>T5E2\A/-Y MGNARJ1# 8S&GQT9E!LH;^LJ&_!M,N4?F+.\=+@^+E2>RT5R3N"H MJ55H')RF:\2TS!A,1LDEP_=59Q*M#I5)YRA>B8>,7"]NCZ(A9@[%2]179WSQ MN/$JL[?2'8!+4W41I9B M$=/ZF*[ES'K77B%'*,K9OT',R.O@:5VW>!7K(R!A\@9 &(\0YF?L/U]"BM?[ M]A/TJ2[-CL1!>EH)LC8AMY8<83/EWGU#.HN\C#>Z7%V),XN5Q7>&;,4$6A@) M0SK1Z L5N&'SMV](]=^4V_VD^;MR^U\DA#4;0;I=6D0YN[/(4IU4?2(7!I#_ MZ1]_0J$7(N2W?/#YWT]DOXJOLS'+\8$<'J>4I62U(YV4QHZ2=RU36!A7.[2> M;'>5<;A0LXEE--X=S2&[1\%Q'WF)4OYQ[[.[GUS^9.S^%WU? W2@TLHR$8Y: MRD6<99+$D$;G/0Q!!.F7$'6CJVS/G@+^F:C$]]NW9PT(/-^W1_T&/-ZW9[T( MO.?O9\;WDUU@R&CXQ- %R30Q0S(EWA"&&#BE=VK'8/\U[?U%H&G#KR$P@2IK M$CZ4H&( 7D3\\Z^E3]#*#_8,/@8O^TG^ O"R)]<@$_^"Q"-DM_@7)"Y3C"$, M2.HJC:7]7+<'P+"?NG]_NO=3R+W'L)]"_B4=(1E-E/IO.T/8A:#:$*(I71?G MLJJ><(-4%^E%J(NS,XX.):51I2G)9)B!:X[^^!.X9>4P7R9\0YGPA'G?USP+ M_>SC+TK7?CKM]]GUW7-O'V+77J3>WM>9Y[7OTLDL]5-*[Q!UWE= D !$74; M@OQ>&L@>8/[WEEFDGF_5>P/L9HEG)Y--+K&Z$E$SO2!2MDK8\>(XT; F*[8% MK*Z GVSJRX';Y)=ZOM4O+ >NDX!:2J;()9<+LZEVNML8$A9=8I%,\!-0?9EP MDYQ3S[?JO4RXI7/V@\I!Q*9+#=:8QHCFI#MEZ[-T-1:O0$$0]94#7Q#<(AO5 M\ZU^94%P%>V@7C)+&;W&=0@\3_=66=FD* H)!3]=U4]7]=-5_715/UWUNZ6K M_L?BP4D"@ !_K&=QCW)!5U5^8DJ_U[_\>X55KQ6$G4_6B:-H#;C*+W7;^MV7 M%Y*X<4P2ZX#O>M/[GGEW6,3Y[@"K'UVTD^9Z(IOU;0$0.<(XRGO=7\\!2>RB M[U/P=?Z$$X%5 ;U"=3Z9.RFZ[D<7I?U"HP+3= OK21COZ!22"%0D2U:QB6W! M^(*.V:;TNJ&I(WIZ%$(_*!QR14U3UL!;+0?G>^M,V 9 +V8-)4R3-0D;@X>' M)B:!\2)6DR86*K&"!8@7##J27M#(N#X&BUX"E BP4(OCUNS8P"W*@2:W@<$^R[- M XK>(S!8W@:7%[A#7;_3Z$>7C"EBEAOH945N+#5C4!G7RJFY%VPLGNSUZE(^ M^H%V*.CCL:0)8!B_8QQ@.A!KF&P!JC0M@#L+LC>JS(.I7+@@J>KA&;47F%[/<.-J7E1PYWZ) V22=B"% MX++S[__]/[O;V:I/4-_0C=]K=\$.^%S(4.AT'4AX#X@*!>?[X/V_>77.+TUW ML^'H:V"K*:S7!B&,D1"N_V [OR-5X1!I8WZ![P#./:MQ5>K#6R[HL?5GAGOU MQ?E0-V5(![^=;B SZ0!K.ZH.14)GQ"[*@R30)(]P?I/K/X$M?O[+8T,#'@O_ M4R_%3_+$NT*HCK1&(&#C\)318**!RR+\-7GW7 TYM"N2VNZJM_=*=\4]717! ME\U,/I]@BEBJ6N+*+UBF&'_%F&("JW'@O$MDF&J&K?WW/[WSD_RW9V#_^?/N ML&*ISM:P>@F+EXH)MEAC$_"W6BF?23!U\$Q.N>7-TS+KD!-.$?B!$'0<3;UNM",T\2S; M*'#R*I.LTE,\D@XS73B4^G%*=GZX/MY;*LN^)I( T\[0HC.::1DV:D[/:&): M$@$5#1B@,,S YB0S(9N"JINV(=7! F*J+B@_UIL:6ZI_ '.6X&?@*6!54BWXO%+N2'TBB78:J;!U#,-=H<>,\5: MO1H&8&?^[KR4!;,3$!G'N\K$%[1 )ZG84! M6I& NKK&-L(-U =-.,D08%LZ&"LM)@C=)@:I%XR;\8:,A)H[5<]ZQ>K;]R+^ M#/]KHLF@E@_4RH'!CS'91 :3*$'U%>E30$_&P,OA48&!7\V))-@.YP ;R@"O MEK/-! ,7,HP<=Y"^OSL@$@K=K2'G#18@P1X'4(2UZ:8!EH MZNUP[*?\*KV^8 . =607#D=@L XT/PIB$/=M.3)&T7,V!' F\. ML;ZJSQVJ0*^"Z#^[$+T>[A;N&VX=P/]@%@A&2EAX15DG#LCP0ZL82 M"Y#0NB6C^UR+#F])=!P(_"'CFG-^@O$#0T(@<1"X^_19%$(.[\L+],"&B??G M!Q#CL0FT@ARKT#K!UW7)&&,,EM?!ZG[RD"F "0MI08)O F OZF F^A6=U!3Q M[W_E$RJ3; %E18"N " _L%(/:"Y.A55P]"%C@B+__>60_ED(#'E@W:&,3B!; MP//@%V#%V> ;L/IK.P?<$)83P2*C.\T%CP_/JFPJ>[5D,^XVJF 7-;")@_*T M)P_@%*#B/*#HV-(]AW<+T>Y7J@6H3@+XN^/0]Y-\#=@%O602ON7!B?!,2)U$]%8H-"=90TEWAOK]&P5!D)Y_N51&_P0 M9I,0[+L;VB 7IW:P2VJ4M

CFC)KPAW,\*VSGX"I/'T!D&3@\5J9TGYGCC) >G!- 5X',[9SKD=V=:#:;L MH(,/ZA! ]Q?W="AW!V_,O:>'7-4W]SGXPR5+_;XD.$KM^8/U+.SW3W;^Z&R? M@T^OBIH7A!M>71^HIH.G/>]['UH@%VI\8$6;#0(0P55XABBD2[X79X#'D*;O MZOQ;,.UJ_X R)RHO2!YQO7?^XJ=8Y-7C8[X3^]")'?:=V+X3VW=B?S\G]ED_ M[BDG]D/&*?EU\J=>&9>6Y3JA.FD661C%+4RHHR7>IXSFF+7$P&$3[+ M2BS5:#-FM:TJJ/:H/XZQ9DX:5;N!XSIX89N(U)9PB MEJJ(QZCP.+#L#+K!+G$XT@YIH>P8'PW8DJ4/>KE895@HP)%'RUNC-:I&<2L2SQ6*%">]G+A2XO,6 M%4W:=7NF#&#Z]='0_J@>+H;TCLG1='TYZ<[;7%]"M6F.<-\(KXIX/:,'B7B[ M'4TN+-/&2W,X=(W\FX>I>M:Y")0$J#-1PQ=Y8JR.%@9O"/R"F1]'H$Z/>\0( M% TC4+$Z5HKE,RFFG@%'BW<1)^2LU;?.VA=@R;DW;78_QH"6!\PJQUR2,!5F M+9G83U.2D&_X__D?DB;^#;]@YSW#>?38"W0(.[[E7R_(:I5-9&DZ-G1?5\$W M,%<00>3&Y%<3@+%MJU*I#R&!M*)C&JQUS%EXR=0:RI+IU8-112'8R/Q65+5K M4%QZ.!*7'XY_D?3J+ H2D+L@J%D(CL*XMH60?LW;EK[^P%&NT2=[.OA.8K [ MACA2G"UCO;!UC54W\?6B*<^F8^)O\/$7]90.Z^TWF_+D;_8\DU%\*>W M?'0WR;%.C__=VPRP?. ._[\?U(^/;HQZI6Y;GC?RCD?]/<_#7GQTZTKVT?F& MTA:];;G*SZ(S(0DN-LD#;/HRR&.BO>66KR:I/*PF_5G2AQZ^JPHPKRMK/RZM M.&+PN6F%],7C]Q./H;=(?@QF4:4S57_I5^+V.LU[)'TVDO)3UAREQQKJMLEK MHOD+1E4^1>)>U_0HV98)L[QAZ F(&P,%@=!5FYW["=<3^,]:P>23+A>O]WV5 MFLV./_5;=@?>!CBWEQ%ZUO8: KIH,%=%K0NYAE$!SQQ<7LCKV@"(FS$*>"XG MTM[5!!C---0:4H$NEXP1S8Y67V8G#6/2GW^XN-O^JN.\ M8W3[9EW.+]=L)0-;'+2O(DO:JFZ*Z*S[M!F$]"AU]"Q(T:[OBBXLE% M!>%5O2KO1<5.9<8[RXK0J%U8%91IF[#E6%8>!AHM4;B;K""JX6Y@&LB+A+U( M5'/Q05D7RPR0%?2//^'0"W%65CRZ;?"VEE259KHZ@Y_'#4F4+2S)"TA0? &+ MX(Y2[ZMO\KU8])-W"O/I](ML\KVXY"/0Z9>RLA.2RB\E$4L8_-PQN7V#^PMH MT9X=,=]2Y[[,J:A 0J/FMQX_*L)@VZ(R*-?[Q7 MRU\JX3DVPM*S7F>IY(K),ED0ZN51%E[6 9[D'P)AWR#W1/%4672K+&U0).15G)/HNS!O61--1TH%8TNDR-2X_E\FK')J36&L@88_%3P MV0U^5( !%F7;UHZX1F_+;V0J/6YP_Z[ZV#,U#_=8.4-,![_\J'A$$[B_KX5D MCZD2RUP[TR3&@\6TW(BD%VSS;@I9L41RG+30J(4&37EQ1LG M4L8T;52Y1=!-MT8K\BB)LBF@4J"^M>=;>U_(H03EU<]GTTWZDF%(8M*IL12' MC%J43HFJ:'#!XVR_%"3X;--8I6F]L)C/X?FMU#;4&N?Z[GJK3T@S.C4M!N=4*,+24J/8 MF9'=TJ@SA[5071]*$%[D]GTH/F_[/I3'TUK>8>Z2E&P/16MED99J!$%F8$UUZ%*$GH) MD3=,3?;Y]WGY]^$=(U]*WWB;@94C[5:XKM,;F96[4N# ) &HF[# ON>R+K;%E?Q?*_>B[Z[J"Y% M71/>%GZ] #[':8)DQ[5AH=Q.C8IJ%35L =I+-/ 2)7U_BL_XUW6A>+Y7[QG_ M/CK/6_Z#F+W^..F ^ M"*M>O_L1&3E6IG;[-)TMLK=?1D66S$V)O;NW:2II6-;6)(RB85];,KK?UQ:F M\PB V7D9>:!@RV+3[IFR*/,&[+2,R@NB1LR6#@9CS%C21-2*7<2J$FH0+*Z+ MQC";_L0_85=B=V1OB5Z8E W3&];]:%LO/E(@5\ZHRG"&9W4;<,:'@]G)H:LKAL!DT[O8V\A8-#'Y+^_L+D,)N(QSW&PK+ENVTSP)K M5R$D#2?W*E8H86G>,&03@[B"Z<2HT9U MD>3&';K66 WS2?O@ED/HPZF"@-^E@S1!VA'"18"R[IP,:$R[70@ ,@'%4+=E(!X!\2&+#0(#NSG#J'ME+G-0N7#N,W+FE3J.XRR62B_D,?V.+8N M?Q+G@38$/C^)[T!J6,Z,\J4:5UN.!$Z59B++ 'R'WDB6U1%A$55CM!O M[N'_= &6'5$ ) <@AX?@ZO57FZ)C!Q"^"BDD%+N0;&G!@5*KMW6N( 0:G;"' MI%!8-%KM/*VL%'G5CR\J>J =Q"\CA37JC4V1-L&1W7UW(7N4\&8I-Y<8("G MUHFJ*@GP3%"7SF&$3L^M%-F<>:!D!""V#=05TE%%G.TY M^@@5=(\C1Q]!99+"_YHG&DA:IPXMWI"P@ &LS$D$ST+=A#WP8O MEX#5 =0I8-+L:30P[),/VE=($O?+5&U6M;,C@[ 62^I1RLO[\$ 8' MFM2>ZK)'&8<3;K%T$K2&-+5E)')VU$6P!@'\NB::M>:X55T$H):!WRT 6UE; M=P-UIH*_64/>VIMP#!Y'4_!0Y\!0FA;0=X#]"705#'7IW-M$?OU5%7ZUW8(H M@34X4("CG0=A6U T8=]&JBAR;((M,.+(1GU#V5BFGF"0NKJ> "SE%#C *\!L M%PK-":"X;B(:"Q2ZLZRAQ'MCG9ZMPH#BYI\[09U5;18%G[F.N.RTQ"!C%!HK MMD:,6Z2>J*=*D;VJFYEB\@)Y"5=Y>'UB31'H3N,:?PA]K@0M@_7*%L!''7SB MD$-]:.CV8 BE!45#A7TC5(D=H;J%[>;CD)4Z$T$IQ+6?)A,3TQBJ4Q;JU&F,*L1X-0, MOX9#[R-XV[.("OE8]HB#>0TH-[%K3N72I$\G+59F=;Y(!!LB ]1P(*&I M"QC8468H'[=>G;[J\FW4AJNS6+0SCE(*W5VR8;(D\>4%D,W!"P]?H$-2NPXV M'[OWQ6Y)L'2P/"29&4T$1I@A\7VPOY/8;I5#42&35I(L/THW LO@6%\(@)$# M%S&R^ZZUF%X;E^X+U]Z)7\".6 57!@""TE"IL2N%; V8^+QZJ7:_Z&BK\+$ M2TYSS!7HN.8GT&6/L8L),(ID:"F:%UD#<(=)M-@X6NQE3R$;0M,M9QW %M)\ MJO\,U1=D#=(X0H2#A[B^PP(G";D\Z89Z>#,@<%-I/))K=@\?9 8__I"OU%N. M&)>:H47K.#0$WI0PL'%(65.@?P#PJ,L7UW^ B;9KZDK81 (6O8CU#7V\&WT M6+; P;8K _>,W S /32FUQO%JI(J2WVLC*;;DOU\*#F4-G:8'=NWCK$YH$E@ MA0,V,]V0#1R\-M$A#>^8WV,'F-B6O]#SAC11><@K;LCBG:080OB3M $_@"L#VS"'T/$$0&,;0%B98 ;= -!0X-?P^8W4Q1AA:LM. M;^++9,0K *$#"EZ%1/47X(!C^ &8:0 C2CR*0T") R8").M(.FE7THUY45K' MY]9;=P 'A10D9[!0KZ,&'DJHBUS$9P24>P:[I\SN(7/21\SD!]U\K$A.V)(T M;"P[R1BKEY$I](Z+^.4B MZA3XDW-%RW+6S"+U%14$SN@TG083R0D?=8ZOEJ<\87 M@DI(F:H-@\]6N\D@H/ _H7=C#KIQ5IHY9L0_,/]F M9]J]N7!!4M5_S^5EKV>X>H+9?C-.*KB3@NT$>,B( R<$EYU__^__V=W.-HT. M%W15-WZO<^5VP.="AD)IZH_?\-H".!D.- M!UAS<6[ID]\4^4KOHSQ(OH:/<7Z3JHN!+7[^RV- O@*9\3_U4OQDQCQ*\](@ M2ZK.M&[#8/>C'W_JD :AG(Q#$83*([E9:OS5$\#>: %[E*IVKL5Q,Y//)Y@B MEJJ6N/(+EBG&@09:3& U+E;+)#),-*";988Q/PMUHIGTDP=?!',E-DBO$,D\=J=?!!@2W6:T[G'/)?["<$J*S9 MDOCK6NOYR6F\+4(-Z=>VR_,9F77(":<('(A P5DH.G2<#,Q>5TI8S40-7^2) ML3I:&+PA\ MFWH5#2>>X0EMCK/=&4]<57*<#TS 6;1NP[I?U5CCZY:)S':BA MX"U.(B!20O=L7I12*.X$BN&4 -I@"@.R$(P(.SY@QW%$;3U%<*3*F\#:!F8U MC/."O_LR/-+6%CFTL.9#61CNZR1@?3,GEPZ3#9A2(2"&E5 Z!, 7W"ZTWC2H M]>R9RX:SM0%*-MCF-1Z&Z7<->3>%\0V#;2/DV*=;'K4?Q\C,(GG7+)-Y0;45I1A8]'$QC%"(5:/!=XJ7? MQLM]+'N%Y80DO(?DV*0S,DG-Z'%+H;YJQ,(TPUK,I5R\?@$6N'',W,?Q6SA& M]P4",/!&G41P9[C25#)F\H1=TE:=:)'39IDY1/ E7.S<1G"Q2]TRMNIC^-US MF'H_LIJ*9$9#-;RJ*ORJUXFEYK3=UIE+(ZN[AS)U$%=]P7[&?F'PDDY/EKGK4-=.>J)YY\Z8HY JTAMQHITVIF!A"2\6]HE0D6LX8.LHU M8 MO@B^@]Y;'9+!7#8EC!=0'N_)Q0CZ> PSS"U=4/;#FR\P47KD1@#6:;[0F''6 MY]XH8-W[!*>MAJW/^-A?_(X) 3&VA?1YDG(,RYMYC8-=*NI(N;J^\X=G(F^: MBD3:J]&@SXYCM896ZEJ]'/'W%YBNZ#5., +7(!>E#D<+DVR'D\?M17%PVFN, MK2,,-[B/M(.R]<&$4.;Y*=7.&"$MW@XNE68YD^[-VY$J&V*\1!D=K 1[3*F> MY7)D@@T2Q7B4E^%-M',X>UG?$12/\OC?C #"0/)]HH!?&NF?B0+.N4(B)N2X M!L?+@TB;R"0T=CR'MP[/\>??!(//Y"S\M7IPE22&,;^\?0K# ]#8^^KOG5,8 MBI.F4)BU25P99[E\H!E?0BQDH14C[="1QW^17P2FD&3T)(_%8 I< M%=U<-S! O2+@J@Q\%P[I$RL!@0'OCJ$1Z\S-?"96JA[<#7Q?S47O/774Z!-K MD_NREYDW46WDW^,64:5K<* M%X$X'_[EROP#07%W$;,>T> -&7X+,;KW**0$^*$[OJ)+D27-L2Q7ZX2*K!0) M4FSJ Q;YZ0OVX&6R60.6&2^6M-TE;5UE.+4CCS)4*QVNCHV*L@PETLG!N%Q8 MQH \(E[)$];U/^"$>QCT.X+WV= ?(N-LCTF('4+F\399IZ>5=*[B%?H9G639 M6CS%LGBF3X1G5):EB3E*]CV%?21R@;2AD2<1$<[Y@(Z' M'GC./1S@,'0DN-.4J61E-V4['!>R258RVX%5 MC\Q;.@6H@KI,H*"-[3D=10EIU$YQ!*CE[(?:_]V8W"^.S>W,()RVK6_MYO_J M$JA)5E*I@,'AW'* +YM,THZ6\U<[O#*N*@[?6D.%LX!B#9.W +9/4]N@E#'C M[4@@PC:%=L;(T*S )I#V:E%N,9^@L#W-F:#%09HH4RXTZT4EAO+ K M$)W!$_(#QF :X,EO7$1LU(O/] M41%E;^XFWST#UU9!1W;AMI:^=_&V8 ML+T9 ],8W.-!=FL3"^AF!+\)%F%P%SV@"6O0AD'OWWZGRI(S S"! %G P&E M?A^^8)LZP.]F4,#9G/7+V@P\XN0=; HA.E7?^,TLO&E*%F8"5@!6V5@R!NN" MJ[N3OF))Z(N'J34G7>YH3O.DM]H-E:%"KVY).AD:=IKH]M2&55KEGKU=_/$E MX_THURM6.T[1V-:PNS1, %^"L+Z3\#&&4M?2 <:!:;Q>.4JS^,G_0J>[['8% M=PFH9T%NA67>@'F "A:BB]4 8SUG/ 0L' *O:KG7)A I0*C#80),/3>![(8T M@HH2 XM-&FO.)0I 3"09V(_18A_M[Z?\QT.S2/HV+N+-X=87]7GWT'4D[58YZ M[120=JMYGZAH_28Z]NI([C]S<+WD8,+-[9]+\[CVTUY-70 IKU:SBC5\D-WABY)KG#?PJX1\]ZEH2M1,W5*<+Q'S6_QX?86 MY_K*<&C[";Q0&GIX1CW%+.@8_LFLBS2/MYSS%^55#B;]M9O8^V;2[CO4@#*) MSZ5ZHASIPVMBEQ52VF$S^UFK MIZ);@5]0@6JB#5YV8 3GODWZT+8?D'=N\SJ[FC9:8IRHFGT)#V"\9:SN6NP M(M%Z;E3[UW3.EG/UK-%!D3C!>A-@:T J@%L3D.(.*.4RU7I3%&'W1K!?%N&X M+$+4+XO@ET7PRR+X91'V"AW\35F$P-78X#W%#9TDM@44RQ4JIP6]EH Y),>] M9:P- "=0#Q2.[5#X<)LD>FUE$IDZ,V M7EM^>M<0NDSSFP,X8ST@(?<2L$]G3T-.QWZBI.6;!<,"W8C#4G5]^_OCINL< M))4.)Y9>34GQ)%%K+46B.Y0Z=O@#>3DG^/'-!+!UML[!):J]*)EAY&HJ79]T M%'M9G/ -MM<:R4ZZQ*GX.L"UCV#G"_<8W)R"FT,0)4?I?6/S308PV:(VYR<[ M]-"IUY/2K"_V6+JE=-5):!1/:@] #ZE\=C 8]TLT-U[FY_BBC@]S0N7-])FC M+(N-K'#J!M_PCL3+1RY)(*&&LC'ND8QQDJ(?-I'K;T5:V<:[3"55,%E9[_33 ML:5 3Y/>I;5&]6YFN.261#S3KP/C< M@:B69@F=)8@^5YI/RTHW,>#PEF>W;LAPJVIP?%UCJ4AY5&S2)!Z 6:2>79WX M8M+D<[2RX+I&+$Z'-8*/T,)4J8UZZM0S6DFMB/'8*.,Z6^L%>U:'-;O%Z !> MJ+A(^"#;Z>Q]BE.1J:-;%6@:@=?N=*/BV\NK1+^A!\J!Z(3+Q85,6>V*E0A>B7/-+$XV\JE48Z8X MUR].(?/,]8M3A]A5+V&\*8>^A@RY9>9^OQH6BF:D&>%J4;H0FRWBP7:_XAG1 MA2N35+B?RI:(Z;30Q&-&<[4L>W@-X]H2Y):H[%:9MC$M=5?$M-:6LJMH>1$^UM/+V&<$E!^ZN"-XED,*LWU MA:-5)/CO6F:0U"8<#.4$TN?AHFN =8!QHF\DR/J#I&Y(@.P/1<+CF5 '3L%. MP HTT^'(F*!*F105J]?,@'Z=4K:?"FJ4C(*53_/#M%*K"8R"1Q)V5IA[$N3Z M'G3Q.=,Z%ZHS5FUA=12>U+K]5CJO7HJ66*;L>[23!%&-M:; M^[&Q:S/".0WYBS'*H0#-=>I#J=W66=[FQJ&&&IGR;<\9H4 M&UR\T%Z-\1@>+9H/7Z[,%T:?/[4S3#I+J*6>0(RG LW6,L%T=.59U<3II!ZM MD_5%7%E&!**9:#(S9C#P,(#GRZ[/DUBTGPP50E0XQHV7U307S55FL1+C%8G) M$2ZG]]D.2_")4='@YR83E@87%U)[SKB?+QT_1KJXR6%WFS0)4KD-!6,:/RBI/CA0E][>(L_DL$551XULTEB6:=R MJT&W&"Q5O8LR$G**B7(UO$_4YO%AM,R0RV75PRCCMSC>)3M'U?E0;,%)U20N M3;*);FWN7:F_A1!12-T6TEQS/#<*M?!B-94&'ZD-]]V"DP\BL6X9".OTEIU( MV4HG62I"D\PHF^J;G'>!]'9]:?7-<$ DI*PZP$NTEB1G ^]BF@\BKVY) :J> M"!>H?+"H2*&*D=+%;*5K>Q<*G8UR 2%4L .*U&")6INMS2NAP4/6HSL9"KU1 M)/2B<.'S1$*O6FFJ!JCRSI6FOCAZ/E*,BK$'MFFY'=_?JT9U&F6.,#];DNK@ MP?V25(>S[E>P65?7P\:Z)BV/"Q*ZEW$!$$3 U'!@J:?* [=PX$4E;E!-&Q,@ M2I6<"H&WZ5CH^!CH+@7^![16[S3=3DL,,D:AL6)KQ+A%ZHEZJA2Y[NWILHNU M D1:9@=GC";N8 PA; =?)Z]11XK%]CB>R TX>A4E>M2J,2ID*^C^RUW;%SKX MBW0ICR]O!LTYWP_-N:R2*N;2M*H$5^GQ!QO7W0%]-7YFYJ4"U>,HDC3F)66Y M0(TZ@F<[&2*'HJ:O*YP.H=IFOG5&^,?W;MEMFG:N M)-N)5"5V;$K$&-OB MQ=)8ML>PS?;V:U/O6W-4K7E'/L$"U4Z)(6OI%NJ&IN^VNC,< /M CL%I#?8/ M3-/](HB;M<9AP67-1,FDFJFKLH@6F-Q8O!O7A;GFAFNV['R08L>?7H9?[N_= M7^_')_!P7\CF4GCYY<+!8_'-)Q[+DBL"8-67C?.;\M)4?2 M6LM>I&,SKI0"*%7P]DJF*GNV:A[8GY)4 IHSF$@; %/4.?LD9(::=?"FF*H+ MRH_U;O+C:*P1[D5,+DYUTYJ-%XQ*<7Y]+?1^7Q:D=?0/=F]PS!-5!T(7.CI>'/,) MXDQUBO_J:VRNYT)I/])B(D,]RL)F,.)BFZ@"M+E79GH)K\, T@$@@7VYW?J+ M^U:F##0\QSL!%"5G+:ZVMGX=M,G6R^_;AH:J^3FM29S-P)89$\?9^?-/$M56!M,CU1+\/.'F-1TO[Q8_"#T[4#*!X@H/#-@_92^K90LA#?;S M0#Y=<_,HL.CU^=[K+-2_!NP2]JB!?3J 23OAEZA6)W3R6D/5I2R@A&LP5K.7 M=V.B5>S0V/X: #5MO "NZ]@M'3C>R_/9J-7N.H?\3$+I."8*5,-GD!-X?2[N M A@W)0&7%[BC9OY.HQ_=*"[EDGB_SW#Q@2H)Y1QCD'/F?2_*7[#IA8>[KDF; MX_QX]4?D 3&R,?#?E-^'M3_?"Z:V@V*:KDR+$=8V^5ER28YB86*PYY>$[6V5YK$I8994.AH?31<-I+\DF?> MXPX$/,2T6R5H#PSO//^R80TGV0'68'7;.;E76,S+(/S!$W+7T=O3=4#/&CJJ M+H F"U!GP;*XI7X)K;2N.S<6=X ZGW/3@#Z96!Q%#-KE:=:@RZ7!NT!%TWP( MGJY_:R-X[,ES$:@FS7GU@#+S@T&M92E%F9 )9=A2NEEK9KX+Q#YLX_49PD1= MJKX0<=;7+5QV0)O0RM& SJ8K!)T+-,UTPS!:R\I[H-TT@_DTB4(/,% >/@W! M]\B52"P5(E&==SB;-L-F+VPN.[";Y/OD>DIYWHA/!(0#:JT/)V.FGA]7"5N* M3>8=,VU8[7=!"DX=1*P?@N@K%D<-Z"Q8/AM& 3;5LD^>UFYD &AS"YB$ZS9 M0\?W?C8OI'<8]Q*1[N-H-C!/9-L,B'=UC9X$(.F4!I>0^HZ@6KB[,F>AZ!HFTL^0@KCV2\+,>U=@;,,P!^]&_A1< M[^-0.7/Z](&IG6U"F"!=$>SEHLC0D!=/*EU')'/CVN8T.Q('Z6DER-J$W%IR MA,V4>WNW%?' ,?=I]OB-PZ(JF;)H\VJ#5VT@TA #B@P$UB9J&MCAP=@B$^W. M:XV@TB3ZDSI1LJD4/O_Q1]./@J:7*7D[X@I>U$!K 48,6 PVL'G4_4J"S+.F MYD.LF-M,C/7!X6:.;I5O1,HJ4N4A\VSL/O?EQZPI+21#D,&4ZU/*0K;#T9OF M0\EY%S0Q$$MM7PJ-/ T?Z,B T Z21IP)4(\8"26,618"VPSP5E'7=K+'\+7' M?]UM;4P"R""4D_NR;02M8Q2BY$@T:9,S9PUU<_L6OM^'-W.< M:<&'IBD#\];U_0#S61 U6XCFF[8CZG%UV&VN@[H HL$*9PD<"KTZN3:.!(& M/FVC[FD0,[RY8]5O4_(V)OZ)NT".W;4G^:X?SWO/8-Z-;!VY7IXF?G=!@\!6MV1Q*$FHP?-$*7H#X=BX7"((]MM?B=F* (Y6WMFD_\-*5 2\3 MZHZ4<&\E@&$P/N0T@W6TQ=W[5P> 7GO^G)/*@)ZMOWO(22Z9P.;&0"1;DH.X MPP=-S7B$ M*)A^"T!ORN9.STT''KM0=-K$F.Z"MQ6#@)8'1X '$)3/P4LV]V;?S+&>^6X" MXZ;-23Z5^E ]YIW[)3[ U(M#S_DAGYY@;D>M/\$&![HZ&G::80Y&'C/)";AL M1<+F05E:IUD(^D!#3--#A.]J!&X':5=!77>"=?IRKU.M#NRH+=.ASY'>R5OH M_B;T(B#9)*(E,M!<,JUW;$Q11\:/>R,9=9:%:5^";+E-I* ]J0I(C.VO=U]U MWJAF,$H@F\[#P!(#_ 0,"6O=V.9P%2@+>NPXP#<7J9V'W7HYKC)WO+_Z2='N M:(V;1O.;HVL+0=11RI$L $/@O:)L0*U1 , RUSWB1?CZ$Z]&;OB%.[GS/7@" M? -T8_.,Z]U5_MYP3#E^Q'V+?;MW9!8X-T%@QC@PDWO #%^?Q"A@([O5TS:6 M!OK4>8.KQ*ZE&CKZWB N](8-J;XIED_0X&,$@1Y+N;I*$L^N;\E/X3E,X2'] M%!X_A<=/X?G"*3Q.ZDU=Z HS*B*P:7'"XH5!8516)H)-5V"8P4W*V8R,R-'9 M/)\NM15[V C/I[6^6I["D>'#D;,V5:9F4JQ!2%JFHD9BB=:XQ72IXSF-13"? M[HZ#E$)UP0F<:^A4. )'!@]'RFQW.:N4:(8HS>UZ2BB-Q) Y "./WEX(*FJQ MF.XD%7R0G<2FLEQ+D17X=N)PZ(3A2^6I9H=@Y-%"^8ILY'*ST(!8,CR75TF]+1!PY-%"[514$_!X M35'L*)MA.[I ,G'T]J.%M@9-(K3*]FQN'#7[C9S5*^6R@V[P>*%57!/C:]A)12*-E"%WZK7PF.F&ND=O-T5*,O"6'".6 M2F#)Y*/]%,<-P,BCMV1833-SHP)&'H%IGHSB0]Y()8C2 M=-BJ1V-LMS6=@Y%'ZVP;=G8DY4H-HA;HU@.!6,RT\^CM1PMEZ'C2J,]X6Z&F MY#RG2H5Z )]WZ>,M]6TBFPN'PAEBV;7EEIWA2LO*O!L^'JDO<]*"%^BR8D_M M>(]C^: (-A\Y'DFO9@I 9C3$QJ.I>4Z0:3Q0&W2CQR-C2VYN5@K,4%GVBO%N M:-+MUPMPY!% YX5Y*A(U9P);RXU[]71 F^JE.1AY!%!]L*"KR78KS$W'E6F& MG2E-B67 R". \KU,G8Q,Z21KU^F0NBP'.\,*G/,8H(/L2*,JX1RNQ$03Z4GL^:G),1!E7JQ$CEQQ$1F$H'4*'(\5\$A<6/-$FI.BT0-"9 MA-U.0?X\FI/G%UI^Q:5MKI0TJ0'.1].F!GG^:$Y;LJ):BC2"7"ULEV*RH>1Y MO )8Z7C.5-/&,W*PHTP7G7%NTJ^+/%4!_'&T=XE*\:MZ>J!QE*H(W50RC_<[ M@U/\P=1&BUHN6@;HKXUSZ7:-'6@BY*2CMY>B=9LK5MNZ4BI9DQ4]:M5E#?+' MT8ZHJ)149QTQPDUKS;Y0&Z]" _LD@89:3#['6XN*8L_958P.=WLDQ8"11V\' M.S)Z@6DTR>'A55\>M!(3'DC&\/';C9#=K*7[^2K1G#5Z_55NUB,3)XD^Q7<& M4VL:M12;Z[/$,FX%>JV31%]3Y&J#9FF2;8;G$SX<*I)!"8X\6F="+TPSJ^4T MS,9'LCH6@MF1;,&11^MD9N-RL6LQ(B?'HM%$/3BKI1E G^3QZ[.90C,<3-LM M;AJHK_JUNA /9 :PPL/1T'D[HLP*5HEEFS63B60ZPWR90D./EEJLI:0$W^86 M"F_WE.8@,[ [=33T:*T!MB0EAG0+9U,EO&*1P5)1+H&A@>,%Q*=U2:=&+8G# MZR&=*9I$NI<&0X/'"RA/-")A,\$YFY-BY;Q=8V<\@X8>+:!8-!O,N>4(\,JG "TT MCP/U@#IQ0O=))ERCJN2*C>OV(B3:]FHZ0D./5:Y W:2*@F0KS=RB&^V'%J'J M<@[OJA^O59B6EHS,,>R2'-"+U(JH%;-HZ-$"!CV14>625E'P5K>35X9B*)ZI MP*'K!;R1B'X^)?LO$KBIZYK?9R-"?1TFNZ+H-XS>F/88#%F>=3.N?4^_D4EP MH^SY;985>&-<-RUD.A[GRW?5^BK5+Z88!9=GT3+06XHQAKE1!OQ?^+(N= HA MI\S&M8'\$-"MH?(3 -_U+[O+@&]UO0#0X!(<.WK?[T!,K .G W'D++",]5O7 MM5&NQCX@MS5(UG_C[)/=\7)9X =B'P!#'P00"=+! M<+G;I%ZI@(^(!T $].OY+/$(F/!9XD$0$7@-1'U$/ B2-+'Q&-@(O!*1'Q$ M^(CP$;%&1/0U&/81\0"(H%X)TD?$ R#"%TT/@@B2>O4MNBLBXC^6 1U/GV&- M]_Q.CY+KY=*=H*OP0U38^H-2.?I*D^L4I74*&#E98*B:%K9.?KHA1"+O)-2\ MET-3'QJ2A!7@%3\38V'MP&TZR4WEY/V8 H+H:.=W)Y4 \4K03TTJ19B5^C:E M?&/Y07V4*, 9%CJK7WN.]+W+M5<2#>^Y &^?9G@G8?%QN@B^AL^ZA#RGBY)@ MZ9 JR&L1Q1<]+SXE&D(/30*W$0WGS5Q?-)"AU^!M&>56HL%7$#ZL(#RQU@BS M2:ZJ-SPQ+)R[I\?_'L'G:AK$$P,+$ [Y++K%,Q&&HU<\-V%<3Z(0S^V^N2?A M.(K'$P/K6*)\8Y7DLSY/C_%\MI+"3W176[=-7A/-7YLB"@]^B%S#--D#A%<^ MSF1+B J<*$3X M1>CX,T?V9]([O=[W5?B7]&HK#\*_ X?BT7N6FIDJG MZ&4R/.?GM^7?V% :,*VQ-"0HNUV())FDG \SSD55P+]1^A;\ZZA=7M.Q%_S[ M"/N^!O\Z.83?E7W_[GK=+=E73X[*9#PSM0E:S)*=5*=6$%?PGGGDQY_@"QTX M[GU[/0^+S[Y/R[Y.GMWW95_JQ.F;MT;)%E^R)"Y'1&8SQB+B8?;&IV]T,(R, M:O->CBBM8E*5G#8T>HQ*GI"0?Z-!\@S_?LRTO2NM)G?[*"$K]O?3Y)IX+&S> MO=WX)7;Y+5#YWJV\+[')=V^\?8E=>IW1Y&_R6IM\[Q;4E]CD?5*O?'*]@WA] MYV;,(VWR"6,NF\*XJ(+RCS^,4Z6?7Q))E-S^/R8( \9X/Z?/"4(1S/S(,' MY__G#OA\7 46ID9*9(C@Y 51@TJHX!8D-V"H60@ZL> OIH3V2M[Z[OR_UTB M1A_G_\DR6[>RC_WW6S^:57"&P8)>$+:^,;H,K%Y)SIHOZ M(MS0S/_B1._J]-^;\UT#WV=\#ZS]]QD_D2#*88D.*4HS'K/P0FL5ZDS@F0\L M_-"-//S?)O;L-=%[?>8[IKW/^1[8^>]S_B#1B[_5! M&/\.!OTYQL>#*YRF^J,>*RVGI6E7Q%>SXMQIF$F^A(-!/U)_ATB=Y\QPO^N< MGF_U(?C^+O;\.;YOE0IC@HKW%257-T:%69@0[4X%K 5:[R_!B'_-T^?[JP;E M/=_J@_#]':SY10_W@2,GZ )MXSW_^#^IW^ M60]SN\8^;GM6[[OP.EX#67,0",EI8D@F+$HEPIR!4TUZ ?$@7Q29-VT8^]<%35 /J8I23'GI37X3D832V"51F:[A5(?49GY1DO?L6+VN*5O*/+J=QW:3NMAUZ%W&C;XB+A;0[3SY?%]1-R+ M(][K5>%CXFXL$?![!#X"(H*O(E_6GY'US]V1Y7JM? +>MO+YJ_Z2]Z<5YU1X;EJY8C\P_[3P M3XNG/"T^WIR'?H2&LI[T;;H#LWM2#<]A5*^S;@X:$)G7*-OL<*?7._.B""=J MSOCM]KUN5_KM-NZJK=]NWTZ(Y/OMVXU(?+^-.\?PT^[[0R>S=Y5K4$D?7._C MMBE=KR#MD^G,GSJ"O4YJO7[^[JF.X-\L6Y6 M'&$SY=ZUVC =E-4ZD;*[;$0-/,$WLM\C"1_J#UQOSGHM)JAMPL^P;LQP?R.%Q2EE*5CO226GL M*,G' M5T[*[[?OQW"#K$/T3^S=N!'[^NZ.IW1W7(^@/?-B/!I!>^;6>*2#V3L_1WZO M*N_2]W%$HT\TM];VRKJFO"FK!^$ H2X($B;R*WZK,+CQ:(>@,67 M@<(5>0D';^)+]MTR#\84]W;;>+U?[X7 W=6]LU*@- Z+0WL@3 A\P#*%=A^7 MVE'8>P&&E(B7,!VYG1<3]QY\LH:B<$ MII?QN'F.=D[J?L?!T=ZP0# MQ_.9A#[38B+!&VE]K@6F";X/&1AJ5O1+(!CPG6E?QYE&'^_<&;4MW.@G\OB) M/'XBC^\Q\A-YOC5!^[Z/>]_Y=UN3N;>&L9^R)JBV*(F8K&'2U)8G8QCI HJF M,V*HJ^"K\<309Q+\QGR!C;M^7>^V\1>77![D_'AVC_A)>=;W#SQ8PHQG]X._ M&P'[]K&GR2;LI<>M;PH_N2E\S8#$0^G*SQZ"V&W4>W#E,":!621&$.RQK<*^ M,@:?G MZT=T!CQ]:.**C$W5ZE%6'B3+2BX2,_$N-9LG4XBQZ1]_ B]4Y";!1]\SXND5 MIQWR "0X,0"5\5?-_?WB\OE46LB72>@[E1KR4-E[4&#__#*:V.6B6LW'DKK( M5DQV&NWQX=AD6(P7*UTR '4PZB5$'>M@OWQ'T,<31;X,1Y]*%ODF'.V)#G8Y M2XO+2K4@C"R=D.)432NV>TMIB%@:IHZ\1$^DYE^#I7W7F#>N,3N*D(JRB5>7K1I\HQ6R3 M8U:I1$< )U7043[IR+E6X+X#\#:7R+X$\U]X@>Q;,K\GZNL)[F^I6:'.KZ@R ME\/5X*P=3%>+B3GD?J2G!@(WJ=GA>PG]GBE?8I,>Y$E=VQ_XI"SG>[W\]"<_ M_>GI=OW$/AXWQ+:7B8SI/;!HY 2\WM7K[V<5^>E.7\&FN8M#XX(*:&R/'B6E MD;!2:*VPJDX4DUO*@RY)0X]&-.S[,_R$)C^AR0-OQ 6L&VW$^FR.+J84O&UW ME]PJR]'+"F1=6+W0=T9\ 6?$Q?K4C:L8?G'!_("93-YUBGSLG*[*@-#@@XE&5:/*%#MVP:.$7)_<'S'7RKFGFM^?Y.RMU M9YD>-^NM7IO(3 E;P:5\J\?$\,8<,CW0Z\+A&Q8H_$Y*W&/XR?8*%/9];YF? M0.0G$'T!I>Y4?<-))#I14D*?6 MZT[P?9@16ER'T4A"D@=AV:;Q<3!5@7SO) V1-^QAZOOIOK*,^T:NN2^^23^[ MZ.OBUL\N^KH$['M-[FU)--&]+$G$>+!6?B!AAC3F90V\U/6:6)(QAA4/L:7$ M&^85BQAZO?,'RZ3J!(?^* MWZG)MY8?R5H^^A>]; M^(]DX?\]TUW@_+\UUYD1R\QH?%)BY:[*,&IW50T1B.MHQ'7AZ VXSG=+/,2E MIRNK+M_/'/$=$ ]D?7BH\^R&6O]"]G8' [TSRJ7R7&K8Q8EQ(M67%TR70M6: M,>IU>[GIZAK/]Z-9WV7RU+QZ/57I@\PJ]B.=>![^=$?'UKV<^)\&WC)[*-W_(YOG>?:V(; M4C<1C04*W5G64.*]L4[/5F%9,N>?O<<9_(OK7&K,_-09<*P8!#\)6\21,Y#]P#__@&_[,8_'?B MRK^Z9GEOMB1; S8T++:*W%@T(]UBV0R,)W/(EC1D2^J)"VJ\Q9;/Y[7PDRA\ MC\77]U@\N9)T)K9[H2RFJRTMSHT[<8Z6LK4LTZ*9#%_I4JC<+)"9-Y'%C^&R MN9[6Y/5.?"?,E]"M/L_-/+X,EP))FU?L*B,M4C4S&*?GD)N!9D6]WK)4F=<\ M<*AL_ZKTYRA)Y8I4*&N NZS? ?H:_'B/=55A*5II,9$T4\+FO(G][Y5K MO"1L Q5(ZX:[E'/>U?6=PT]MCCJLVL@DV::FS//\0!7SVGZEI] %_#)71>W M$($[8YV-F1O&H!V^*/*&T9WH)%-)M(L!99K@.$N,E/(4/__QAWP]=@)@ /8J MA 9L*GE#$ 4<(0) 1!)=5Z)T%^,5CD_K56YJJG2*7B;#<[#.>X!(SA>+I%:H MJBS%)JJ44BK(I,E B^RX .,MO3;P9QTP'Q EB2M MM>Q%.C;C2JE8+:/@[95,W8OW$P$NR)!W./2#+ MO#5*MOB2)7$Y(C*;,181#[/W(I.RXE.C,5K-9Y)%HMXH@_(,O1*?8XL M2X*E0Z(D$4V2^S3Y>C>A_*B'A7?K^KQN"\@"$K>LV;RKY8CR[,]_P3_KF015 MX@VHV@S_%65SHO++WTAA<%^^J=&&U@/^'CK]AXG70 A\XBK!!/$/7.'.M'MS M_?_LO6MSHDS7-OS]J7K^ S7W?3TU9Y7D8J,(,^<[5:BXWRONOE@@B @"LE'Q MU[_=H(D)3F8F$Q--^KK.RD32-MVKUSIZK:-7=^,SU32_/\?S'&MX==<8.HBJ M>Y0D/-3TGL^)Q4I1L:0BN9S\_+__Y[0[#TX=/K--V_UV/*CN1'P'R5"1EZ>I MN.RJDH%+<_#^;Y*YE4+OT-DL=TO'9]%L<']0]O3H1Y\*O&,>#WF: MO,LFQ_PB=!M]$KI(&( N ,S_TV_EGUA!7 G\_=NS5V1#'<3L.9:'.&_YWKV) M2*^.(N>T[I1 //9*?O3*0XMEVU1@DE2E7B_P3:S4;8GM%%9IYN\POEG >B*8 ME L5OEL1>O_^5WZ^DG]E%_OOCU\6:[;Z0@_KM[!\JUD0FCVA '_KM>J5 M\' M'XJ5)M_,5_@ZUNN#!PVAV>]A$&E(\COV-1]CBZK\\UKM^2I:4J" .M0Y8-M MGL>LIY9P3L&E8U28[P=;.Z..]T3@9B9LN-&L3+"%4_N76!GN2ZHEIEH0Y3I) MK*V68FG3=6D^V$*/X&G)E@S,3C?YKE#RRRO36YJ%3$,#)3-/2^9GM#4>\ YN M,%YKU1KM\ER9ZT#G]VE)P6X84@/'"4'UK+W-S*0!U^%!R42=\Z$95 7<[QBU MY:9N34-_-:_RTW2RSE$YO0\J55D4=:>D\1O&7N^'VC0S)9Z6+&[%A3#M2(1! MN=F%F1:8]3+H3)ED2=XB U+PL@*Q"JI&M9'FVZ(N."UE M4UJI6KLS99,E*^&\Z7=(9T"T1IE:Q>S[:Y?2H%>7*"KO;*^]4:0LH;:'KK7( MEJ?S(E 1,EFT6;;+V5*'V!$2GJY3JZ#>*@PZL&BB^W1QUAW,BXV1V+-ZS;*T MK->62E0TT?])H["N3^11U\B3BE@;NZL>NSRKHU5VF:MLK7E7+!5:6WZO:?:B M"WJ5K+-73;$MP6: ME^B]8*7G^1(Y%,5UI>].\/FX&ZA0\Q(E.66DZU;6JPB2-*65J3IAL]FS.EHP MEX-"P=_[1BNS5R?FU$UAYD: M0799W?8I3ILUSFI>M3R@>;54K(I#>L(NJSN#0>E_= H20]&B:221=WZ?D+TUTU7&%(3.AC.TM(<&LF9L6_D*:[0E!5"I+CF8!+T]72I MJL'KIA-%)6O29&NC/D5((\%G'+M4GQ2CHHG1]^;=C2@X98T(TWQ7; Y<@8DO ML3X._Q-O-OZB/*VON-P@*[.>F*>F92O &VZGN9W"HE0 IN#[S\J%LUY,7%P/+ ??M.^3\^*#J+SOF'1K/KSC74WDDO\J 31="'DQ*M>;RJ&GEL?=">G&G/C"_'@;;S?5'K].4R MT>K/=(G5.6)3!L&W"J)E![S;=P/U]5S2TV#G^6CLX9OPC[\9FT61T7U\$1^( M#6(+4W(\]=OQE]-&034Z- AZ/;/8F7WL_)]0S ?/GTAX[+Y[?.NA-C+NT>^O MR#^;UG/BIYW4;X,ZH<(>17+\C$/^_%L<*FV!$'X9HASBT>C%QZ*2[-EFX*L7 M#DU^/NSD[P_[HT#SKY8;V#L2#<0U# 3Y?/HM&H>W&H?T+Q)JT4B\T4A0=^RS M.91H(! T?:YQH.Z(9S&6=!'$/?/C_ M?6D2#GU'O._%D>POU@)^1?\WX0)M(UZ@%> "[0,1CC3_XVL^]5+-)YE+ M[^GX6\U^E/_R6*LOYFI>?FWOYQ,<^P<3W.NI 7W'7G;OY-^JP4.^"4(VA&R_ MCVPW/*=#XOQ6 .]O^_K__H=DB._)GXG^OQK6W;9BD&=1\$DT^+.%A4=RS-[+ M\4DW$;Q^ GC]VY#IG:U$/Y/5I?O@"S.8%J1;F+^P T^R%.^??_^KO\AM.%7B M]]ZF 5<_,4<"* 53=*45W-3B8;HU,P.8DQOU5\56JN0%;K1@"I>&XYO$S,.E MKKKJO<:)6;&^O[<\WN/\S??>6OP^W4Y_TGVWL>/T^?K]6?4\IMQOMN,OF]:N MX12HA^RDN6NO$OE'G\]%N\C:W07Z^+^O-[U\91BL\G-B[? 1B!+O-B:\X>R MQ!=NUKR()::SLT&W3E5Z!",4%$>HL9TMK1FN/ FA$ME^IQ=:8X5T)^RD+7A*6RB!=!QHM8E/=P,7['>$7= MQ,N9Y4 1PF5>6&_LD:)$F^WA&=EIXF-3*8_T_7 ZS_U&WS?,AOF$T<8G#;*N MD6)!Z0)(\3\EN_"1\P= G5W87=R>XX&G8I+GJ;Z'V;(OZ5:< :?N9@O)TM0H M1>Z"N6\?7;4_@YO^[C'V.TY2'WUL/X/^OGN8^?9SS55%6JU+9:E]0E?J&CS( M5\QENRZ?\(-QN9$/V)J+GLI#![!UZZ1"%BK=MZ-<8_'TPWO=U#9TTN\MZV.CM MA=J@WA@V"3&]=Z(S4)DO/VCJ.3._R5MQ+G1:YW%P#@=VGA=_0_(#%_S[DU,Y MMW-VD/'-YP *>)R]J M^?86HW"Z-/*[TA_+O96\'9I98B4WLZO:9*N)/?X"TJ?^3*_/0O9QBW;FX0F\ M:R#S^XL9-WIJ:I;\I*>FWA&9XQQV_^LSJO('JUJO>4;>ISPD[R:&AGQV8SH: MFO<;&N(N^RE/-+R%L4&(=KU#@Q#M6H>&N",_Y?'1MS VR&PN/#1_N(3SRX#F M/>4 CQN*/IV>M?56C.AEURK9WQ#*M1S.1MYQ]!4?SO82\=TS9*]TF%^L+^\L MHMO1)YIZ=V&]KCX=&+]7TZ;G9\DK%, Y;4%3T4U,1>\LE5^?>[@"M9CJ,\NV MF3LR?87V\JN3$&.;^=EQB->+'K\X2?N-5>AE*/..J]T_D4]1AXNC6 BOQ'T] MC^3JNOD>V0W0'JY<$H\-XFWD$C._2# W:3KO(A=D2,\0CD@P-ZDPE_3GESN1)?_Q>18O MMN#J)BP*G&>MQ36SJ%8ZQE[/<*%/F-/:IK31AT>!9SVZW[/^UM#-A1VYWS(85I@6 MNTTGE^UT@/4S,"(CF8NA4S1)(X[L8]GP.W0;,6IOXG_]W,C= M]2+P!DLK($K+ F[VS#:AT]OXXAV6OMZQ^)1LN@ /H3!-#O NN(;[L" MMV[AJNH9S+=RZ_*X0E%E(^QL#*G4,RLSAX_O':)2:>Z"CAVR#H03B)&[%H_P M)_@@.OW]D"9'@1'4!VJF5;3RWH*/;R:BB0NAPP>SB9LEXA@4Q'_.P 8Q=C?D MVA7MX%Q23*?=(3+=F:R*TK:M-&8CJK@='JYMHE+DLW>_(&N_06M_[<519,1O MX'?]Q'B]A9R1UI2HB>L(N-_Q9(0K28![;PE\V EA:RK6;[MT/#3Y9Z:&Q8X0A8'H>X*J3 K+ M9E6>]]9;V.@O/](9Q-$;6PWQYJ MC4E&%C30V(C'0S3>!Z3QV.@U?=N7S,-1[]<-NK+N8\M&^XB36535]PK?56]?SV2;_X+7!:^(955D[@1U?W E=> M]7P4N*/ '=%^29%@7V]K,GC6Z1,M1?=F8#R Y0N[&2C*K^"GXOJHX/-6<_S#T!FEE<8,KOE MI\3*[JJ=]4!69\O.X69(DDS&F*\#,8@JO#*JT)9!,Z,[&1%;>-O1%=J->V40 M_?O7]#H<7G4JI15!4-YPL.3*TRI9!AX?%7E\=(JA$>?WP:P5<7ZW:M9G/:\S M1IUW.L4"HS-M8YW=S(ATR2GUAUMHU!'1QU!HH^T')_KR@>NJEG\1'^OZ^HSB M=,3U?9Y9X"?.W<'DSR7F&%[3F#G40M3G'7F=;RC5F@L";CH^ZHYE.931A\#B M*B1UJZ3>[:/*6=_RYYA"#L9>D,%+H3@4\(5/*Q/9)K<04X"+R9U9)T ^U)XA',T0#F%#N03?5:IH17O*'BW;OZX2'])X[B@_V>P74S MZ!1E?9 614EP-OIB7ZN"5DS)Z*H*-I5-7X@Z0#;_T6T^NZL?WN;/NG'/ M6KQ0;MDSLJ\PPGH\;S?()J\,*EMH\=%1R$P&D87G';?_^A)0W1]'Z32#%6C# M+/GY[[M"G70EV?"S?3[:6.;AB6\[T>HE@,<^^NF M@DA%G47-.Z9*P*_!OSRMY+B)!O-M^'?=Q0X581O)#-2[5QR?A^&(S .JVM\8 M!U!]"':Z%4@'I%#TS8]_P8]C33,3WH,+M'/Q'8C!,:7P6V1'3_26CAH'/B_B MVX.).QKJ[G$V(?X#6WA2[:.Z\)EJFM^?"Z6.-5SXRF0J?82=>[$>+Y.)Y'+R M\__^G]/N/ 2Y^,PV;??;<8(\$=]!,E0$GIJ*RZXJ&7BTG?^;9&ZET#O&C=P= M?9Q[O]W/L70TWE"N_\%.?H=220S:2MKA)X([8#5NJG/_V^%KQV?1M'K_T/9T MJ ??7-4$"K%1GXS:"3)1Y!WS>,C3Y%TV.>8747OZ87S^E;"%"R?J_^FW\F>1 M%OX. !Y,R.:C"ZX/CP"J01V$=IZ'\WZT&>Y@(M*K0^O9B[K/&+/\Z)6G5W)_ M^3&LU.L%OHF5NBVQG<(JS?P=QC<+6$_,]2J%"M^M"+U__RL_7\F_LHO]]\4("_]5KU2H'O@P_%2I-OYBM\'>OUP8.&T.SW,(@T M)/D=^YJ/L455_GFM]GP5+2E0@)-RJ/+!-L]CUE-+.*?@3T P=K3D:7W%Y099 MF?7$/#4M6P'><#O-[106I;^D3/MF?'EV&R1=#KY MLM.:BP&ES(NKSL!N&=O8J8W&@O>?*1=UC_R"J<#O=,#+?3=0+V7%OZOO[!W0 MN4:CTH^U"ZKZ "@YGZL+0/G[0E?H]3'PITK_J/BO9[2/H#-RB$X])/R)B_30 MK0/W]J]^!HMT'Z# #/Q56#FF':HJEE,M=:[[6-N4(">GOY%']W04H.,$M Q@ M7X@M@+,E8>L -'6N ]_+<6W80F\AN=#Q 9.WA3F!ZP42<'. WY.W%17KJ5' M$:]:I@GRJ_1/='#-(U3&/76&ZSL\=DR^E:-_IGISJHX\S?&-8<!TI. :ZL>!A\XK$>90]MS=3F(W5$)^+0K"53EV:9JAACPB:'S"9U15XV M"DQ9_L.01:B;_>YAL@T"W-AO!^N4/>M ^+3+2"]T\[&ZO05=@:6 MHXCOT!*B7\GO![EY#Q+#M@L;*.A&C9Q[4X7AR,O1]X"OTRX0JAN-)GQY$V O MO].]*3QK85J(&YT_:3,LU%!7LNI.N3YG\LO];F-(>[Q>"LE)<;KD'[$ 4.F_ M*8&[!5X=B P>'>3PD\H/Z. V)'^V %IS^O>>ZF[TF=J.0IX8^IM ':>]QJ0A M*5NQ0^![<4BL9"M76?%??OCP+%=L9"(>E##P^.^P^WJ!88>8 M:L+X$@#&O2FH6.# ![\I< ZZK3 Y>C&=%-UC;R\LIG-/JNKWI_)_',(JCG,&OLU,6#:=.AK&3S0R&=)UEC)(]'Y=W>6:^G6A??F22 MBZ'_.4 MB.PAXJB6%WN*IKZ"KN@A[L>D: L%1'=["Y[*(>9+.\R4M@=2XHCS MT,^/#R+?FT1_/*X >"&);YM(, MT1MM&X12Y<(ZT-3G% !S)$A2Z& 8?>\PI3T9MH,NP :FKM><;V4 SX_'4RIHU5FV&'>JGB[O+ =).Y[_<#!QP6?:,KT*1.QO#>*SDUZU0T#7J!O#S@ MLP1,-$(;6-G_TBF"("#;>.^0W&$BO)+Z9-S/N64_,7-0_[$>3)I%/&/L^STX M>I(;OB:'^ <.'-"T(^EI@1$\>!"8"KZL !?7\2-]P6@BA4'5BP37 BXG?$A& MS\A'PH@=VI]( @KWE5=OKL!2\,R?&\HA'H3O>32UY<*CR=S;!7-B%I/QUK-8 MM;D3PY+3Z>SQ,K-1.\ QN4LB&@9TQX02AD-V0;%34-(D%#M)Q&- OH+85_,\ M5U_WU= (Z:V7;P1UMM1Z+[&+Y4&G5F=[:;%672[,]%8*,S6 1N1=$H^.8D]A MKNHY,$;<@-CN4M8=L1"/5Z*>)20&(+B/R-#*<9E%L'S=!S/0)4B)F M=!IZO MS\.?HM(1C4YAJ65A#8PQAZ-R$P , AO3#'%["V,: .^>KN@ M6E/84.@!S)^M ]T]_ 4HO*\#/RZ,0O7#%")YGNI',%4"BN*%7O0F\!0$4B"> M55T8+F%P5&/*Q#RLYP+QG7[IZPPTXSCR<\HJ@ "9APW MCJ6BMS=45P-8RVL@OH.&E,(4R8^7RL KBZKL!J"+&,7$@GH48]]_Z?B^%'19 MHSX!G->P(5!5!;RVY-J!DP(Z,;L[R K\* E-[*OT$,[+*G!Z00VGHNF"J,/AU*PH) 7+:FPG.0L:WN M+^)Z'\GP^/[> LRA8,#!O.P=7W6'W2M.YJ@XIR*&U0"]7WG'$3\1:]SEHQ0D M#!@U+LWG8'PC><]LU[%CT+MO?/R5!^&NX%@ICX8@'KYG.ABY%(? -JL@')&W%.\NND%(.+?Q)/P?=/O[LMO(?UWM @@&L]W M54L#7[3.FI8# A[@#UG 8-68XII)SB&; 2[11@Z$[8)_) ](V,+$N]Y=[&#M0K6>F#ADU=>=$#'=4"*[VNN#Q3(V[!>8G2 E%MO5&KA& G:-P MCE1ZY+S)H(41.ZIZ'O35S$>Z8+N:%"]>!_@J-B@N9;M8Z!>.#@0 M\X'([)EQ@DV/PU1( 4<+5?%J?P1!TM$B'M3SQ-).8>[4L+8+?98L?%SA!\); MZ'(42,]=>X5Y*I@B+0VTWY4L#_(,4*%LJ%^S $[_1Y?TI+)[381B<[V%[CRD M"@#]NU=KT&@[\,_J,!A5N&9_AS5M'Y:#DX!R?-73PM&R*30K#?A%QT+']IZ( MX?X+D:A_,B0'*A-X'#:8;#8'-7FD4]!Q@;]"QB"21O(-I]9WX/-^9T"5%< % M8-[1H\^@UJ6,*1=0W:.!V!'D0 M5!]UVPL<8$K^27_N&R*!'_#=TCUY.5?5U*%1<"S!VV+F[6$&G]GPF1YG5T7& M!6L 73FV/9KF?R(14.S^Y68 /@,L=.(H-:)0@^B]X 4IB+%;H,3P7RCWN'/Q MRZ/K,T"[ ]._=T]^ M-9)/O"39LUWYD.JR@ZXH=%ELSWOLK?@+,/MK"TSWOU>^'08!&&,\: M0+IOM?3P%QDPCY+!4/[+D_R7-,I_0?DO*/_E\^6_/)\@\@?I)-1;))",\B# M/"4VH \%]VR"]YY( ?H=@XIP!P+A^X8^?@/XWLP,($$+C0 MMW]PSF-7Z'X)[>&EAP2'XXME=28%GOK8@59AM![1#Y'(O^K_Q+'M^8CDL;\= MQ5/@:U84S(-:H"<:+^"![Z@@](U"UPUH9.0&0[=-]X +_U4'KXD\S[?QH)[R M65 +4T"S8# A!GO;O>H$+23FN.@,+M@//#..&/6X"3)>^)Q-@&T#'#P(^ MMD16@9NZ.5&/*! X0@-\29Q( $8$>/'SR!.WCNG24 90)HF7PC> ?U5/5:.9 M*<[O3L%DZXBP -IT+VY0*E[4<550R'JHX$0'@#5$ Y)MOISH %Y- M"]9R()0+4U-L>6%M2:E[ARNAD2H=B6%^0BNU,J_)52],UIFB7DC"QGIHQ",=-TFLM,68)B MIUR6DPF6RZ0):?XE5C?IN%U0<<.5-B!,UM %5Q@.6SMWF-7 9)1Y6K+"K+JJ M08\S1)ZQ%W:K8@2M%0]*LD]+9H>==GI@L@Q1DY@M)S*MP:P/ZR333XL6C7": MD72C;/3FD_'6JE+*UN#AJO#3DFQOVIB,N_D^L>JOYVG-(Z?KL -*)AI*&(23 MS8Q[<[%EB]R2S^TW.5\#)1,-5:=;CJR80]9H^34R;TM>4ZC!.DGR:=%Y9R-[ MP=(.Q%I/GR_'ICC+R+#29)\:OE'MCG:&2>37Y597R\L9M]N9TLD^X2)-N;([ M)(7UR JM^6BL5X+.-#TEGI:<>7.*Z*?G)!%4J+6W'*Q&Y'([S21+ZF17G#G" M.BZQR-7V0*$&0DV8#)W9G@GXB@9*)B3*C.5@RT:D)L^EG W97%]=Y-3/B%AFYLX EDRW%2VTU5-,U0A@ZVF2=7@'D MT3K3;/+U6G;,M7Y<@#LGDV^/MT->&Y;[.^-8%@,ICQ9,?9[ M6#)9:0VW%RRO.Y01;BTFU^@[!;+8 ?YLHM+\6)AN!RNQ1>C%7FY?RE.#]88' M)9.5=DTKTS0[TD2H4>-J,TNO:DNE ]-%$K6..EZMT[8F%M$:=YF]+C>GY"ZZ M$259;88KJ NA->*)E5]KIM.$E>=9'AY;G:BVEAT6MGF-ZAE,U^J4 LXT#34Z M5#51=$7A$UGI2R)14\DZUYPHHD1J\!R=1-']O*L[_+*R,/!9N4.P3G9;*$9' M[B1%8+6DMKO+44(X\S)IVG'3'2\Z\2MAJA13ZR\S1H,@UAUGI/BSSN:DUZ[40-.&.M MI"&IH:W81JE9W3-TNV9-9U$+DH.@]^CFWF2\AEBKAE:NPY,@9H_+)NPUOV?7 MV4(GTQ"HS#:HRB VAH18RJ0S8,3.H'"ML==< MUGNKD.HP @^+THGI8C0@)GHA'QIK:TZ52:K2ESP-%DW8]V A=&OC M/N<*O7UGS^+MGMWEHUJ3C=78#%7HX;4=$>Y8UFUD"YHS 67/X%LET(32UI$H M$5F68"S0@'?K8D*=4EM0%ES^!61IH/-[1&*<;0 M3]?G$\[I6V4>%DU6F[:*NL):UIYH*0MV6VEUY# '1'L&CUA%(3DAY+-$V&+$ MEPH1%4U6VRGX*X8H-%:QZP^U8&-.$,(@W;_8HW=-FBD-^O2HMF M!2><-)C@S\",,PL85O<;3:-GC'MA>;UA9# 94V>@(YP1Z4Z[U^X1*I\3C'0Y M<.PI#XLFVDI+@UVS0PBTB./]M,R3 KE@-5@T8>2;:7Z4\XM,CV ^$N E) M(W<)?UN=D5K&:!76;F&D#H4 BO8,U*[GS0$U#3NL(=G;P&JU]])BW(%%$ST; MLOF\FRUDYH2:Z]73&:NZI?RH:+*U,ZFRV/NXOQ3P3:NRJR\SBMH#+3B#X*O< M*JQO)]T&T9H4AFU^)^0*% ^+)BR7(A61I13)!C/M6G$6[+K:'&FP:+(%_F9/ M.=4AQXE2V"^[I1P]$Z#_>@;HPNU8'WM-7B:"8)O.ZUY=&(]Y6#19;<,:-H7Z M@E6%UG@=3F:THI2 NT>=02\M*(]+-@=F[A.6:?+ODII6-*M8(Q95&&[9! MDEO(9"8MUYLL*OBR-S)J+&F,9H&7"5L=6#31L\P^W.S%YF)NZ!R_'P>4T-W. MHUJ3K1WG![8^:*\%H\4X$]'6O#6S V7/P++7:BO5H-GK%#JQ<09(4EF$E0YC@CS\_M#BQZ9L[MY7AG7@QM(= 6K0;)R%41*#A]!I*4 M.3%2FL*.%G"#J,I:23?W?E0T62UO9ZW6%L2&A+ITF[O6;DGL&D (9W!&W=FM M=&72K IXJ=[)YHF2R#9X6#19[68E=.@R2SI$WMN%:CY8"YDM*/N ,Q?>"-\# MCJIJ@0IA:I!N:<_MAE]+.7HPT"Q67%5WX1BX-8V*JB67+\^7N\;=\!AWA_6$ M$F3((K:N)+1*7;Y=KN3Y.E9I%EO=!M^OM)JOO!'^F;3R1/.?S3$_C!Y6L>)5 M#: -5['C_7X=[C>7@+RX'].-Y-: ] NNV.NN2[PU(+U)_9U6@8X6)+,9]K4@4_''JY6>?+#W]K)\\2.R7&3X\++\\J%DQ1%^#EO6S"#+4KV_%G6_FRAJ_.3(Y=.,R%5]R3A M[U%*+EQ8C+^I[M19$*V%VO.Y/H-?<=69JF\.^76NNM'5K7<\,4HR,?U!,^/< M9=T[R/X.P][TR*TSZ@H$NH4_WG;'CN?ZT_SITGS%5U=>M%OGN)DG6FP\#+P M-\9:4<'C/JEZD]KZTY 7>^2J.PR5"9W>\L\^J&Q4,=]&U5]%6'2"% MH>XO\H'GVV#:$78P!0&H"]PR ?Y3^M+NK.JG]_LB-0L7G##,5?%Y,6-V>]SV MRX^WW8?VU^)MS=KC<(5K.;$VXXR&XG4Z 7D%XG5YHA7*3),2<8$O[L-2Q0N] MSN7$FX4L_.MK[\ZK=2OX>%$D5OWNUK?)7*;M/'?HXQN)MUD9V(5:EZL3/:TH M!L1NW4AGM4N*E[J$]N;W&HA")B1AX'0_9"ORIM_>;=]?O.U<@YFXG"P)(4&$ M36'B!"T7@(-U9EK\\P=Q#M1!*)@'WNYARL-^V_C(#CA#O73G[:/D_]^<3S$5 M'ED8I7Q%:6(/J6E15I0$IMICBV4);D0)G&B6G '!PBT:,/TI3D6[S_"'N5LP MG>=8RI=VT:$WQ_URA^JBW75/YM[#.,6'/2HZ3 .*,WQ,&Z8A@#E<.>[*@ZEY M,+=+5F%:?GS\XN'(2#].08.Y9M =BA.K0"7QS'\XJ 'FGCTKF2<9;]'*N^/J MG@K7A>\3K3"8<1COY8"I?FZLB<<&Z,?,N/MFZ2LGTH=9E#L VA6W,78Z3H4! M>QV)'Z:'.-&& V!&IN0^[(UX'Y^D>-9OBC9_'+:X'G/[W'MO],%!U*.4PKD- MC\SPOD4]N'3T.%NH2F"JK?G3./(D(LF%AS\F(\KJKIW5+#PDB9:9'^";7FT+ M N)+Q8BGF5"/@\:?'RM+_/ZAL8?1."0?Q:<]P^VIDN.IWXZ_G#8*ZL*A03 E M8A9GNCS.##H]-RU."R(2Z3R^>WSK,6DB[M'OW:R0INZX9V]6.$GB.*D?;JV: M T4[BN3X.8I;OL5Y5'!*^67^TB%9+7KQL2C,!C4#7[UPWM(SIPG__K _RD*[ MZ$GP:"#>;"">/Z ;#<0;#01[1S][)2X:B+>#)C00US$0")JN8B 0-%W)0"!H MNIJ!0-!T%0.!H.E*!@)!T]4,!(*FJQ@(!$U7,A (FJYF(! T7<5 (&AZW8'X M_0N>?S8BOUR9N/P>X)^+)NOXCW8N1QF%;W1SZEM>&'MI&4Y+E'19"G>/_>G-/R%'3R<;_SM?V8S59W/+RF% MY.V'SQE[48=;0+%^M.^R84?;+86?;+=\O:F#?6NA_+:ML'^PD/H*9.=GET), M=WYV*1RR06>;JF>=SQZ-#H0#MY3-XTS 0Z'OXTJ:P47F>9 T%.YL/7CPFV+[A[^_YMEO])?[*X8VM=#Q9J.>08UR&S_=MZ3E"%Y>0W_Y01)4 MBH'7N24.>/M R5W(V)&QOY:QW^>(/^1T] YGUAV/+QV/W8JZU.I&SQ7[;=7O@4&Z-.TQ>6VO;&P(C6)\Z5MU6G *[D8@ %L*IM-(PA $'!%$( C M]4/J]V[JEQS&XTMY5Y=,\(JR:FY4V$?X.LGR\,,[8]7]> GR2(-O2X/?V(M3T9DQ>D.!4IV6-SHK+=;"SH]9 9X/129 MHCGN&;?G]K)"GE(X!=5Q@8#C4XSAH=K2"IX.O#]<5()2/A!5>]-4[96#XI6P M2*TV.'>*M&=*0/9HG2*9)C+!8J?W800 MD" @N4&&ZL_P9>]G]?%P);<)RJR[:8+=$;8$\87Y\H.BG_/'$+H@=/D4Z')= M[,-GUQAD-\AND-T@N_FX=G/;7.&?N9]]'->$:D/O$FNRV"Z,?'&W3&^!^PDY MP70J33R7"W%C&5S1_F#5\^,KYSPUA5FJC]*XKG)5XOJZ_-F7-'[C)M#6\7K% M8QQ^"+!?2OPM9[7YSC6H+H&S:JO&ZNEL=_KPLM-L+H2R-$/=>+.9L64+/+R7]LL/&N6+(&#Y(,!R M77'#I](%I/[OK_[7-Z_>GX$$)JO#E'F8(0OE&C]1[6 F2"9O[[N#H>XQ+X\= M_G:&)*CT5*;2W$J4!+[3-DJY1CG? 1WGOOP@4VF:0K,D@HD/ A-HED3J_XG5 M_[9)LK^=Z I+KT^(PR$A!!T]V/7P#;5V8"@8I=*!F>[U:;-K2J0[."&8X]IS MW<>^FK;G_8/)*I"_BNF13#%?VAV)-I1:A]80/O8: @3$KU<7-UP]'P>!H@ZP MXYC8K%L!:.VAV:!ON0A1XG)]::=ZPLYW)=L%0RNY8=1A -I0:*YMFN"K1UQ_ M#KOM.3/PZF.-$FJ9O4ME^"TI<_R4C?9_IE@R"=W_H$50!& ?&\#>V[][*S3[ M=39@L)?#0#)6(T'-K\/FH+NR]\._\30O"7)/L6WIZ[BV'T@KL\%EBL]NU C:KA3:KM,W>T-.]WV\K%R#(4R1V8A4PVK1HPZ) M3^H:0"(.(A%)L,C+0E#TV:#HRDGDSZXQR&ZNU&[>80I_=<+Y76;A[6+07VK5 M@F:4]/*.$^RZ9??@+'S@J3/$<]/PS>5W/B6>L:^R:JESW7\EWP*E>7[X+K_W M0MMU1BLWP20#U#RLY.5BJW\.&9U]6!TW=MVVJ,KS7M5M>]F1UH%2@<"882[) M G\J@T(8\OYA!B)S7Y/,/8'\L9\ZA_Y&E-Z/)#LO&Z(0:7N;B=#NY)F--"_*"TVFTZF MQ2)? Z'!;:#!E5.:GTH7D/I_ALGP(LSD'\UGJV9-[PNEAF&$CKJO9?QU?^M! MYS9F%3-4\E"TOV85KRG]M:GZQRS7./45);BB%1BT G.C+,+E:$F $P_K/L]N M)S!HL]"2C, (A8$S=5>-3'7:F9($9".IYQ=IT)HO0IR/B#B(Q+P0B?D4E1)K MQGMGN_,V]D"H]<1^ICC.%RNS+02CB+MDN ONXOWL=HC0Z$K1Z#K]GSPL511*0MNB\VDZ75Y%DR[;SM1&Y_T#CP&U7XE@3,!ZGHE:$3I MGA^^R^^]?G1QA..]:6O^OJSJ?%S82SG621/K!JE)!5_7[)'V8A3E(\PX Y^2 M9\IXTQWPA(0SU'R_K)D>S4]),CJ@DV92!'W!VWH^E=D@I$!(\78$*&_9:8)? MBD.#"ED[[?9YNCR^ (#T95*3?9S$Q5ZGY)>RHS(-L H""+R,ATHQ='(E!N$' MP@^$'R_$CY_SEUJN0#8T1BL3-:?9I?J&NTQS+X^\?FKRC4FG2"OUXI+H+=.; M^Q5S"TV>^_(CPZ4RV>=.LO7%7%&N#O"P\3+$55L-;,MP&X8F0* V,$I"*_'B7ZV==)T&K1>ZT6 M79\4T/HIL@AD$<@BD$4@BT 6@2P"602R"&01G]8B;BP+"QY#"'D2S%4WJA6\ MWCTMMSAVU\MQ)DBA_[T%FC(:J!?G1..>.L/U'1X/V[=R],]T41HV)M-AMB"N M2Z3ER[V"Z*>U9_.I_U#.\2=8#Q"7NY+,[Z>\V^'1EQ\8"[>YT_=*]+HS(S(? M9#Z7,!^3W5=R#M]J$36[6,1]S:PX>N<]S(=D4MEL&ID/,I]K623#D?HA]4/J MA]3O4ZK?Y;95T3!)@(3;JN VIOC#=+?:X_BZWQ77GLF4F+"8W4HO3_GIQM'K M\6!]V(>A[B_R@0=&076%W@&8:;KE*IP@*73B(D 0AR14CR:]W7PT+/*L::E4A5IV: M-,Z:5E%4WPI@POT^L]OU*@TQ<-?L5"SLM+2ZA0 #MV2ETPA>$+Q\>GAY/?+@ MLP\W4GJD])]NN)'2WXS2WS1/]V>>7[HV&_'\>+T@UEK3S!/N2*FH46@)^;AT MBF)>GXY[-^[M>)?G\>+*%&:I/DK'NOK\O6M)Z#E+*2[2'<_U4 BW;T" MW7U;__"O3GBQAYM5K^9MTT:KSP4CO#T-^>S?7&,4>U#Q 9N'NXS 2^WC$55- M]=D[C;0MZQ985<@;-!KPH-@./HY7Q.A!$*)FT()-,,AW;U5 MW;UI!N1O)RDB-UD6\@JM"M*B38YIT^PZK 8GJ2A'Z=E9ZO83E(Z'1CNN/=?] MP]5[F*P"\:O'^_A\:7?D4%#*$N*'$3_\SO[_:Y\EO1U[[@9O%G9$S:PLYQ;ZALD+94L;$-HL#^&:B:_Y2),VB= 8$8@C$/B2( M_3K1:N;8XL)D9,,H48/^7M@67:+5VV+;LB&4:%)HL42P5WK]KE)N#5@> M8AM,U$HQ690)BK#MLV';]\O>&GC]G.PE$>BG47)Z@]<&HHI+8G[(2F3%;0S* M,&>4@51N.D41R3 9W4&(L.B#8Q'*H$-*CY3^UOGCMW3IW1TN#[W1-B_62G1M MUVZ&QFX:T160;6:(YS9?W%S^W5/V&/LJJY8ZU_U7<@U0&MZ'[_)G7RS[*'0P MP,W#TEPNAH SV%BP2'\R+# +8;UJRM4Z8ZMZNX[ M3&47X1/_:#9:[#A],R&+C!#NNF&UU_$[.2OR32$I2-%)U_2?OV4%KRD'M:GZ MQU33./\499FB-12TAO(1"('+T8H -!Y6;LY@JLX[A&@*H[*1U[> 1 MD95$]MGX$*$'0H^/B!XH]Q(I/5+ZV\Z]_)7;3$YXJ=^>2V4AM)JCYF90[1AQ M$ ^)43;]7$K0C65+'C?B2YZG^A[VKQ@<>@VJ\D< 5 7:\43J",RP_?Y?=> ;HXQ/'>M#5_7RY47%.B6EDT16.U M%'99MY:=RMV7LP]\A!EG\'-B<;.:M5VJ0N 5U_106C+!6)N2'"1!:9I,92ZY MA?13F0U""H04;T=?,O@B= J4;(GK7&.T7UG.0BE> $!V1I/4=\M9F0AU>32K M-/SYI-J! )WH-,IDK[@;2&?RI@0?B#\>)9]S%'5FJUP8U)H968Y(5>K"O9" M>WV39P;K?+V]';.&U.AUL\U:U1PPD<_ ??F1R:3H2ZZXM_2?+C"8N3S; MK@1I6\2#H>B9W&J1[O'0Y$GJ,,TGF1:4#XV,_C:,_LWG^6;#R/!KMJX+P6K3 MX4:Y?$;K7F"JGE7I?C.]]@9"?EC@U,9R" 8BFJHA/4JS3(HCGMO6='NIH[!* M^5&5VY@)E6U3 7\LZE!(6!,$4%@#_'GA88*EJ K64QT_0E>,)E(8&"7JW__* MKT>*?O:E$K1@]%X+1MUB!O+ MPX(' $*F!'/5C6H%KW?CR2V.W?6RG E:Z'\14?D'V9UD3%52,+N3F])$_.&E MZ4R=_'1M+FOV1ESE-,KWYO428[V<[^S&EG<\CA/V?:C[BWS@@=%376$W,P,X M+) 7!?\I?6EWAAQE"9VR>OC6-R39V?9*:K$_+&^G%!E=#,)0*1(=^82L'5G[ M:Z4DB<5>@V16[04Q])3AK-@<>8WRRU/#7P<$5FV=9L)\UB5ZN:P\JXAIP10T M" +,EQ\9.L5P" ,0!EP3!J"CFI#Z(?5#ZO]M/2"2L4;!KIS;B*U2KEIUZ>:/4Z+DO&"/->(ZNWQ5ZM9)#2(Z5'2H^4 M_J,K_4TS=7_H^0W6X9#OI$E#8@I<;MK7Y!P>Q9:0D2/I%/61#J(Z7EYZO+0S MA5FJC[*@KG)5X/JZ_-F7%*Z$/#L:<7RZWN$FDJ9MV2<&.KOYS- MNZ*H5NG5;#V<:(-Q9TK1D$YC4/ @]HP1OI[JWJ[MM.;7]U>I%8*72& ME+RH&<-<)3N0F0$Q_XL#R_YV?BMP8KM>60TJPDH:]=H#7 W]^1;.;]R7'\"A M)] VT^[ M[L2RRV+54X@*Z;2^;E6]OA&.B'*:'PM+@>Y B&*^_&!3)$FBU#0$4)\,H-[! M4;HN?O1=O*6)-L!I@6RWB?R:MNLYIT,K#0U"$??E!Y0UM\A90ECTP;$( M90PBI?]T2O\.$_"KD[?O,H<.9HL9-U?&HA"P@;QD_,F&HJ(Y])!MR)QQZ/^Y MX73#IRPN]E56+76N^Z_D&J"LPP_?Y?=>MOKLM"P O\/B5BXVW>< SEY/AEZ] MTN$$O5#8YW]RHY#:)!E*Z9S5YR$?93V0:"@RMP&5"^)M+=V]#=C\+R_=%L-)N- M&Z.2ZVIBF&L[#CWV\&&#A[,19.@RJ0R;W#WPUP3=-:5E-E7_F'T9IV2BQ$NT MG(&6,SXFPP>,_6$EY-D]50"0NT7>SQJ]64]HYX;BWF& D\Y 7B^;HL^<6HH6 M_Q%P?'#@0(3@GX#+4TQIX'.^X:BS(1$R>W'>;DSQ=(N'F,)\^9%.9=D+TH"? MW9@0I%PII'QR_O"W'1)7E/;5>' S3TM2S>10(/1!Z M?$3T0-F(2.D_G=+?/D_YV[->QA#S&EL1AD+>D*OS%FG,9OUHUH/L))LBJ&?S M:VXL??"X0USR/-7WL'^]P$EJ/@.*FB"TP1_ 8U#M M5Q*(!-3U2M$$2D'\\%U^[Y68B_,,O#=MS5^#GI1W(!#(2J2QJK/M55G'V57Q MY?0D'QG^N6V1XY9,X[3B"BINMT.UT6H(&VU*92$=2=-,BJ#1W8_(W)&Y7\#< M?\TCYH>#O6%Q>D4,LVV%'K?'=BB\W#OZ*0I0Y,@0-;I2$@( !7.C/9UV)CQ$ M >;+#XI*,2B1$($ H'?!(&_H@&U7(%L:(Q6)FI.LTOU#7>9YBY@\NRRZ]2Y MBA,(5$9EVPUCMW:;D;63T8O,63'VE M6U'!@Z7[NWQ+:(8Z0=061%:9E^IZWW[Y(N&]I?_\E*9PUI=ZG;XIZ"4[T(OE MH9/6.]#D20I,\W2*/#/-HPQA9/2W8?1O/L\SPE+1RNM.6@@(?12*1,"WY0M, MU?JL4!XYAK8UUIMBF;5%9=-O1#%Z=+XEE_G%Z46WETH)JY0?5;F-.4G9-A7P MQZ(.A80U00"%-<"?%QXF6(JJ8*V9;P-LQ<@4!H8("$5^/6[RLR]8H&6;]UJV MN3XIH(5,9!'((I!%((M %H$L ED$L@AD$<@B/JU%W%@Z%#RE#M(DF*MN5"MX MO1LQ;G'LKI?B3'!"_XM8RC]*N*0@3TG"A$N2B+,OR1&0G[/M3]13[PP.BIKK";F0$<%DB*@O^4OK0[PXQN MM@8WJZ:9D.B5)&=3J@WYGLI/*0YF+U$$E^*RR;.4T8(&LG9D[2_*1YKS]')* M+UQ39'R&UF?UJ:=V7[Y'Z75 ($]GG&W.8\:$G@E'^7E_MVW-(A!@OOS(D*D, M@Y*7$ 9<$P:@DXN0^B'U0^KW.=7O;3V@NK\LCJ26KXHU@MUL>)_(9X679UF] M4MR2\])!GIAS1LD)%&:3P]EUO0-=%IC103' ::&?"UQN+Z/C*0534!T72#@: M.0R,.":M;-"!??0 I6P@JO7&J=8K1\4K88%.48"W%/X$ \Z@YMCO[0=-/ILF MU+V,DBF.3J-S;A"4("BY7BAY %P0N"%W00#E)ZI/1(Z9'2?W2EOVFF[L\\O^:^ M:RW8P<802TQ[IBQV'4H;;Z'G%]TG2:68;/*X^IM-@#K>L'F\3#*%6:J/LJ"N M/ @]HP1OI[JWJ[MM.;7]U=%$X+P7F;NO7A*'B MF,Z&:>Y]_&^N0?V[^6W%=:4T.]#KPM!9XKO%GEAWG6A^BZY#)#@TQR&<^# X M@>8XI+NWJKLWS3/][32E[')I7!=[72,HU');7)OXC=(63E/1Z3XIDG@N??WV M,\&.9Y,[KCW7_<-5B9BL@@%0C_ MV66AZBE"T3[N>^;,W1MYDYR5FMG6RJEK$*%@7EHJ*O^IS (AP17X^E<,"^_$C)Y#BZ<@P6SJ[;(X M[3C":N[D\&9U5UMF.A DF&CAFZ)0@A;"B-O$"$1._JG+,)YD<^DAVV\*K1UN MT,[:,$;UR&7@OOQ@4F0ZN?\*N0P(#FX##E"^)M+=6]7=C\+R_=%L5&(VF4Q_ MN6D*:GXY(O?N9%$H;N%L!!FZ3(K./)L4=/MIF4W5/V9?QBF9*/$2+6>@Y8R/ MR? !8W]8"7D.%H/*8+'TEY.FP(C42>P11U:9T&O)Z=(HZL=:G2J8YA1E$:TH#I%,TR*+D10]K62T7LXC_A0%@ ?DCRK*SB>&)9RL*9MFW5IH$ 68+S\H M.D5>\EZ@3V41" 0^/@C\%0V8HZHU6^'&I-#*S')"KE85[,7+UR5_:O*XX:W( M"C,8"[T=4Q3Z.U/:&1UH\MR7'YE,BJ8X9/+(Y&_3Y"]!9+S RJ.-C%YLWH*I MKW0K*GBP]"U%+MJ3Q;Y&U!:9B5Z6UTUF]PHN_L\/'LB7,P-^DET*3$M<"UK8 M'#BMR.1)ZC#-)P_*0QG"R.AOP^C??)YO-HP,OV;KNA"L-AUNE,MGM.X%INHA M7YB:W=Q\*[9J2F94#ZKYMAS%Z-'YEBR3XHCG5O@CLO*_OB2;ZH]_%7WS]ZIW M]Z!\>*P6WTZ>'#E#@'?W7.(=R:FK[X[MZ;!QWUS5!%"X48_6 JG&+X\:]T", MXS/;M-UO_T-$__M^K!$J6**ZZ-5WC'HD7JG,':A9MEU%=:%TU'M]P:3 MS$" M(^![_PM>?/P9R>F^%=$W80M,R?'4;\=?OK^"V3XCN:@-N"F%=N!_F^L[53D5 MU*$[![-ZS$*_M%W,739SGN;].<2Q"1N/".''(/($!!(8]8*V']6%SU33?*ILCU9,CC6\CM1.9HT9''OW*$?J M9,8XS!H4$\OI!!*BG__W__P6/)V([R 9*C(33<5E5Y4,7)J#]W^3S*T4>H?. M9KD[^L&LCVVCHP4<*-?_8">_/VC8(RW".Q@=;JISN(X3?>WXS#TL[L0/ M$PCZY6?:39%WS.,A3Y,Q:%QBQ)ZL9=$/X_.OA"U<.!W_3[^5/^OU_!(5^A'$ M ].'QY5 5N[>0*382"ZL=:>K<\=>R8]>>6BQ;)L*^..P4J\7^"96ZK;$=@JK M-/-W&-\L8#TQUZL4*GRW(O3^_:_\?"7_RB[VWQ^_+-9L]84>UF]A^5:S(#1[ M0@'^UFO5*P6^#SX4*TV^F:_P=:S7!P\:0K/?PR#.D.1W[.OA_!=5^>>UVO-5 MM*1 5/0HR)X_ C$4\ B?EA3%3;4O-W*6V&KT M6;RH+#=K80L7P9^6Q,E*:5,@UB.CY+G=/B5PS9$'2V:>EM29>I;$M\V!V,M/ ME:99426YI8&2[-.2OL)87KK , :^$*N5^FS)3>L@UDN^?$D]+SGJM;H6J6AF#<9+O9G,M2G9)I@1FL1*J;EYTR#^M,]+TS,G1['+8H(4]4 [W0 MT30H'-C7/$ M4 ,E$WT?D<5R,+?7/:*451OI%KG+^SM89Z+O96UB.$PP;0BMW,P>[SEC$&H= M4#+1=]NA*VP@.I+16M&6LAL5LGJ@P: ET5"?;H/>6T7P>K\?L.59.,NF05$R M6;2"I_,=(6"W*;^J[)""6I.]T3DQG?\Z.BB5YI MY31?:2][,V+-6)W":FA,FYLM+)KH5K76T.NCB500))&V*Z/VI(&O0%NI,]V2 M&^-<=Z67Q2%CSCDG; ^Y-;!0.EF4JTVNCG:OG: M:,P;0T*;[AI4GL-5T-8S:BWFN(FYS@Z!TN*"**:#E25*/"R:Z%8]7>7'2MM= M"T'%)RJ4+H^+;@<6371+DD*64;LU0V1:.7>8LU?I A4U(-$MM;'Q&CU2FHA2 MO;%?UD:.$/*@ 5RR =: MH+OI&+C1+O"P:**M)15?9\",8Q E#>^R'59O6W)4:Z*MSLX(,L-YV1 #FZN6 M^9(85#.=*77."KKZ-C?3>FTB;&BM7F-;GI8RH-8S^EK52GII,G95HE4*A46M M:37U-D#_,_K:DC>[BC3)RR*SJN6$7BO'!^,.+)IH0'%KVD6E)S!BR^*KQ::X MKO1T'A9-2B 3^,6Z-+2$U:)<+;>#N:GS4=&$!)1M,^BYCFD2Z\)LGI].=K7\ M#G3KG,$LNK2GCXB-@-MR;=^S-U;'!]TZ,UM82CD_+8]ET0CQ76F2777*6@,T MX(QJ>];&XO,+84CHLLT([%PE^W'1A 2,I44'(=%4#<:?3K3&G!,I/"J:D,!D M[E\>)NC('B%1;NSZMP:*);G6JV>4H MVR[L",:6!W)_LE.VNPXLFL37%E%M;W@S+91D5N5R8PHGTU&MB6Z-\ZUBJ9A7 M9V) M4A5]0>=AJ'!RWL3;0WDAJN%.#$16S9/%QE^52:&T:5@B:)@<,+\*C<1 MC* C#-/L>&2;K>BDVT11KH!WFI,HJU[KU"@UBQC"I34: 9",<1+8;1:GBC:EP:.-*6=FE&R MFO.PRC>]W3JBW!/=VM!RJT"5>4=DY%9QJ>:U:IJ/:DUTBW%GJT63:_N"ZK&L M&/3\1D';J6 '3+(4 M3%-MS96U?ZI"JR[+^_B/<_&.>^>V,F0GK81#DS]T0@XKXK;E\(1%0$05E$ M_>M?%6BWW7IZU<9NZRUGNNT2*K,R?Y5;96TULG%TQ?;#A,&C:N-F..7 06V# M-Z4-2]%_[). JQO"=N]8:P;#@K.(E=H +ZA$KHZC\.C1QD*79Q$?PHGN':^[<>1)Y_ MO+KR-W67(I_+BAQXL0?/M\ SQT#J]RS9_X[!^.O/,)#D R:\&, YB#'?#Y6' MCF5X[M/@^^>EI(@WI*0.PW"O2D^%.](4RX#T_O='ZL<["S5I M]HZ@]_4F^WH>8K&.!;7,L7TER^=5[-0WX/: MH>!><4>N3U#>('EUQ2RX ,5A6/>V: [MD]LB.3!%;HID)-FW03)YO[CK<'W] EZH%CK_POW? M.2;]4BK\T[L<7*I?:S+LU_JDK/6A@5'HS4 /YOU);7)]HUM)GM8*N;+1-?-MR.,Q/2 X?UI:"C8C). M,\?]U,^B3,_7"GQ+_'B^%@@!" *0]_9=-#8"3?%*#J]1>;J5E]WL-OO^SBYG MPI54FTVD,_V4X+FTOV55V? "7&%^_"*H>"IUW+P) -NNI(E842W1/&LC;G+GHP:/P M[(]?)!&G3EST? &?*^*(.!0B;"@#)IW-_?HF7O7'/+*;9T(4L<-O!:V!F04G MDH;:>297K\MCM[B7FX^+6NBF5JU! M%IOW_$W4\2J&3ZG=5:-N W9;R92]3"F57&9][O-UF([3M;>WV?\/*!3=8E%Q_5+2SW'FZYE>+Z9WT#0 M 2XLS<13)SJ1?_&T81:V\8TMP*JI*%_X?N\TNHK:*^3(SOB[FBKCKXVB^^&! MIL(_J&?R75>I21H?MX2V4%OQ-L=NI'XU&[7OVO,ET<5C7V^N)2-)FS]MN6(XCHG9C M4^NU4<:325-7-VU?C1.X!>ZQO(&X8R,5G6OD"4[!Q;!V>? MF2I:JU9^0%@XEE:T4$MC*<$5L2KG@'M*7B?'A4G MR>?B:-\E*1N>&CS3]>*Q<]XOCC*\SV5X'T,7!:!K9'FPX684)W;/6&9WA:1> M/TR_U;WM%98C3&2J'4&;Y\2QDIW4+3SJ *.D4)-58B%5Q)RT)4LE+9/.9>#E M"L"])7 RSI )E-?X]-QLU,J'<.:KX L,]$93\63R0A>J(_1Y)JL:M4I>JN;W"DF] M7O0QNK.!8'0*6:%KZGY9GABCLAFUM5+R-H7EF$M4=*:$9\T\D>4('%[P!)Q' M I;TLL]5DGV%?.CUP<2MIE!OB^*+'[>Z0IIO,2A]X;. 5T@RDNS;(/G"A]&N MD.2+GV2[@H865Q2T?[ZW6'A5%NHLACJ+H?Y+J/\2ZBR&)/LF2+ZE@QFHL]AU M'!'@K?E(@;2>RY5TN3F1" +6*##QU+-M M/% ,Y8JB@P@8OA0PO%Q34%"KBC>I6A6A-%>YY5!)E$T\ZK8_!)TO].6^R>-\ MH;%P[&&SHM4#O A*W*DD@_#B:\1<40.PJ/%B.B+H;-F9+T1,KU-ZQROJ6BYJ M@V#6KV@FR^4D46O,5M-!BUB071\J./OC5RI.DL\5#7V7$O(#OI=+9-5:R5\-Q?FVV1;+TX[7B;S_A&M[U8DYW<@Z6>TG MF5JUZ+N%AD200>NN5!Q/7O"\X,VKXDWE#1 @70,@O>SSX66YL^C3"T_/I8<= M-L<[E1@TL4EIM$JE^VQ8\IY_V&W(5DUL3""S UV02 M&AJ:$2K[YH,]: MF8XV&EO FOHRA76)HBMEF6+4';ML MQ"]XJ/"VU!"U[$+(=$7(](I#T*.J)C8W]97 &#/&I!.2KC6B#K(M-VQY(;G" M&-\XA%>IUS4VU_0A8 'G-8&N*T(-N5!#KB\!5H,J7J_GRT,39_H+<\W7"I,* M'K4'JZQ,7\+\84J<9[(]2K0$?9%M0'1A0W,H<0OI4M1QZ\JA"'7C356PV#11TBOU@R$H7^;Z'$H3=6W(PE,H:HY=F^S/.+ MFJ7Y$I'\8(G#(VRXR7C+<;T] @<$#M^A+*&EI,F4,*+30EV0B:WD6SD', M^%!9 H*,XZKW+P 9CY?M5)GZ=>-##!4.2.IHH%'5C5?7ES;?VXYK6+*'^/:YV1)G\&M3Z?X%C?@;Y?]1T)\>T+\[1+]IRS, M;R'$[TOS7\O:?D**^N*&U-N*&/[S+X+!_S[^]^@:,<4R(+W__9'Z\=Y*6O:. MH*_IO*^B A?'?@.SJIJIQN;@\ZD34\V1.HJUU(4;A#5B%!Z/06_H,>.0.GQW M=2!?4H<0XA-W5+1ME#XJ^V'<_SVW"^Z2VM&2?ATB<%6]6=XA O?1W9 ELCD* MN/+FH\1"Z_V M>)GASS\U(+.: FMW-3/F3BW/ <#H_/G/7]JWKG_>!^?1M<.H8AG5=:*Z3E2Q MC"3[-DA&%M$U'W'%VDVM1T7'$NUDD["H_A<(>JH5;]334MJL]'6>5$@J^,1X::4"80Q>.X6CRP9EJ-TNJQ;2":9.(88)) \;<\M,Z?4.(#!B;!-$QM/ MHHSE!3LW(>A"T'6MT/6R,UOHB,WEILPQ F8;OLR(.0L?1^W,3O)4C]V*O9FP MM!+V<#E(*3DL0#3@S))QEK[@S7JWI;SH,F5TF7*T>"9OQMAL7=!'XK*T[67Z MLDG4[*C3L]LD)FCE#E$6D*XS+N<8,VH?-\]-NU-5GO/XLC>>MX6) MN!XXP")D@J)>M\ M>B76V?[S9F:, I M1[W&4*\QU)$)=61"O<:09-\&R;=T1 /U&KN.HP*\-9^KMJ+!5LPHO'5]X2W4 M(.@" 7G'=J6*/+/L?JML<]766%%S5M5EN!19"(L\PMU)'G+#!M$X(V*OU&?;Y0WYR((/-!#9T/>E^CK4.XX_;0 M%7,5;S+;^BTZ;46-M<.M,JLO^A-9YU5GL2*8S%CISTI8=2LM$6W)7 &[/,>"N5B4+DIYOG-(4/9P9IZ5V_5Z 3 MQGA89QJ08=#I8^,$Q2*<0JVZ4*NN*\:I)5%GZT5MF]49R5-\O9-*V]FH@664 MR5=J[90\%$NI8FZ]\DMD3_4AA?#4,IV(T]17+SH_;B'M0EW15.=\QY3):#3JM'I);K[*:]U.7(!9MSD4F$5J@U%VK- M]170JJ_UG$*IDBB+RUQ=22N>;978J VBHIOLU3=.LBLR":,S20^[-67:@/#" MA@81_3DGIU'K+91_1:VW4$>]UQ_MCG5Y;=YQCW7@QD9Y!?5 BN?8&O.S=E0\]HNJ32%^ @S$&:< MIXB!MRI4?5;$N[J7XG%]E>1J63[J(H8.W>]96&93P9GLN*$E"IDV/^,@E'RH MB $AR7&1_)=#DE-5[0A)WH,D4IU3@7JV>+S$\8K&-4@]5X^Z'D'/- L92TUD M!"Q/-E5Q4Z@4\@VH^J^O1_C+E8$HG$N%@Z763*"3[D^*.1#@.SSQL,ZQ$RK^ M6J4.J:EZ@$N:$OX.UULS/7E'WDA;_?H'_+-_LF*HL@WU??KW2',6AKSY&="\ MF]N]7@00!'[?1:]),%3^X]%C'ST+4U3#>!I#?^QG[YYP1CZ';U$ MKU5[SVB2/F(S/#>UV//EX-___9]#,W/O;D%2T,=J($-Y9HUL1Z/%:K\78RK9F(M,=TJ M9 I0CB[]@??(@MZNC/<\WG#]&4 ;:[^T<^Z.9I MS'JJ":<$7 YV!&E(JXI"4TEI1"<(B1[1*6F8H%DI-4HPZDA6AXD1^R,4"GF_ MAZP6+.Z5]7Y'S]G3S&B[8:1)M0$WRZV$U63SPQ47M\P+%E>=/U,!0,>\_';29;MWB9#\37=4\;#J5SFE;3E@Y%' M;Q_,4HHR;-"^T'6XIF=8A4F7L[D,!T8>T3XF MK>EX,X;#XYC,*NT*$&7B>"BA6*M* MMNE*PGRB)'2Z52C-K2E2*M./#H4=DY2:64V7'G*+/Y:6:E;%AFIR"N9+'HXZ%XN5_@-K-J0FQ9)5KI$K-E*P>>>D+V-[T,Y2=&MB=H M%:G);)05M=IP<.@1!R;EAB"M5FQ1Y'N]C; LR47""9YZQ(%THFFLVF5/%%IU MOMY86)L$DPF>>L2!1,4@FDFNSPM8KS:C&TIW-27!T!-2G1T-QK.2SV7P4HMQ MJLU6%= ..'!"K"65$^Q\EZKCC"FWLW39FF]7#3CT&"]@'P.( M]#VA!1L3ZY@)9VB(V!S;#"O9UHK% /B?D->\H"OI#)GV<:S?WBH9I3H71F#H M"7EEJVS629;]#,[KLY)'R+9$@X4E3Z ZS;0*.=Q1'%RMEXJ=8H4U4P"KP= C M#N0:*[.<=[M9L:9UAH5-U\"ZM6#H$0?(;EML;'5LL&UL95.8SH;![>]'')B3&25-.3HI+.=M8Z8UQNF6'PP]XL"8 MM51KD5LZNI9;8E2K2,$=T4<JXV[HW5JE>O!U3JQ$6AS MKK;D.BU;K$V<@D1KTT*=X&#'Z6,9T#R_NIA4YOBF20T&7"$O-+&@^_P16?I MMY9^HM_5:\MZENWC,[W5"IYZO+ B(4VL!)D1NG1U1O<;J?9Z' P](DMCRDI3 M(GU2K T$H8U-9^W48 +]_J.YMOL5==>6JD'Q\*/M\*6/1:& M++7%59)C?6,LB64E.#!T-+2B)S(\XR^ ;2'K-$.1O92T;,"AQT"DJ5:3S-2; M>*O6+;BVMB'3=0X./>( [9KS;+?2-T0^HQN2M1X.Q_G@!,(1!T8,5<):K=9" M(.7*8NX6=*$W W,](=KSEKQA/3*3PW,Y=UI<+3I92@ZR$<<:*_M&P^S,-8'A M!\OQ+#=;U+I!M/&(+-^II_K#UFPL,/5IL934'0([*RN$BE6CJN"R1> MG!GC_C#32 5/W9/UQ,T/OSB4EG*:ZG0F9DJ<%]>;OC?1*P5U(L&A9!@("HQW MSGUI-/7CM^_(EX:U4KTY+(M8TAC(1@&X$!TN^!8!OA7X__=>=!AJ QZT(2\< M]>?^AT-/"CJ=.X<3VO9*Z+(]=G$/0G$[_Q8_\DM=>__6?3U?Z'B]J:;Q]Z&_ M V_DX/FP7>'8L/Q]D&;_.P9#IS_#@( /F/"B([Z+N@0OW@^5AXYE>*YZ80?\ M]]%EX@W1Y<-PREL+(Q'7/Y?K+YT[0%R_"-=?.OJ V'X987\^68>X?AFN/W\ M!'$=0[DA3+ /2^]\?J1_O++JBV3N"OJ8VG$=I[I>8U9[:JAJ;@S], MG9AJCM11K*:XUE"U8T0\1N(D\9AM2!F^NS*0+RE#".&).^JJVF6_6?+#HOLC M/KS^H%FTI%^'"%"1\^%C(G!?0QVR1#9'YRJ;>2C*?J>(1;^O7(6(17Q1P8?W MUZ!Y,=I";VH+?=&>/#0>(Q9>[43II@9D5E-@[9]FQMRIY3D &)T___E+^[ 8 M7W-/DGUE>ZR]6:CO06W4100U6[@5FE&SA5L@^38EF[XYDF]/LF^LC4CTG7J/ M[W4!(S%@6&)S&9BEFFPXJ/ON>TB^>)/22]YQ<$5'>2]UDC<)#_W@) %/\A)X M>*R7N#_J?^HX;5IV-*IZE]P0N%TD M^LT^Q!7FQR^"BA,,?B%@N6RT#P'+6:\_0DV;A_;UQDGG.Q/@N]VM"(<*&,F 2 MNA+STE?5W187HH@>?BML#>PL.)$T5,\S^7J)Y<3?+ F[*RR6XHB_'FF^UNBPL(K:X& MK5YV+'O*IF67,LX,W[3UW&:67B]5-VIS4N]["Z*FJ2D]9V[8V3:[ 7.&?6^ M8TG&F<0%_-&O]*LD!!W@PR;H.$$^ASI?,G&8U=;J*+8 JZ:BC.$'W-/HJFJO MD"6GFIA'66G\M6%T/SQ05?@']4S.JS1M&]-.1DOI\FBU]9.BD3>LJ.V^&5V0 M^0;9]X5NON34'8L<#2S8Q1!>CH#'V8L9?K>9J43 A8#K:P#7RWXL,Y#Z6#)3 MF8C>ME(H;OL]/KN-.D&Z'D^6_>;2D@7/G\SX"ML<+5@?,!CXL2Q#H>PH K/+ M^J\(S#X'S-JT5AUQXWX?QZK\@ET/27Q>B#H5("ZR:\.E:WE<]3O5.=;5T\T& MM*9@4I:(L\1S /1=DK+!N<'8V>Y%)MY^+S+*\+XKPQOUY367JK.[0E*O'Z?? MZMU6!(7TUFT'$W+C5*HT;;FCQ"AJ[];0<8?;\"(OU,8*F:NM5CPYA)WW@7>; M(N()\H)UN AF?I/6B%KW$,Q\-9AYV1?M9KB4JJO%$3YOE.1^TC"SHAHU^DQ& M\\&R8C3R>(MO3[:S H71:WCS!BS69>+)Y 7=480^-X,^OTV<1DWJ]:*/M)YO M,6S9;HI+QV!RS":;].6H0U?+9HN4*E,OAW%LD7/VYUA33?:H;MMDB^3!\T/$H /&O'!"OSE8I61R\MU!]?F*1LGQM)B MX45]"$IUV[.IV^WT\-:\98UQ*>D/PDOOJ1^_DO$D3: *_*\114' \*6 X>6J M J]:V;&[JJ59O O$"EA7$ M$TP*%;G?,E[<> NP-^'%)%O.]?IJ:2VJ'5$8<=1Z.:I%;1#T>YCD]E>LJC-\ MA^,R1(53.H&"PT* .(6S-U!$GH.7.)H0LU'=-^KLA7KE1 69#WKH?-#YPE9) M3]],:1['Q*[27MBF46]%?6!G)-:7365KLF(WW53G!M_42A[ 6A(Z7T0JGJ"> M*[I"%>*H\0T"I"\%2"\[?8W)IL$5QY.1R/A&>BZ($ZEA!6-SR=)3_"\FF]N MNK:>)*-V-A?KMLR13&6FUV@"GTWSA4RRT(# IQ-BHHGB>?"25\RP2:Z4%4T M\/VSG5$FSWU&^;:0!?7T0JUQSH>\=6]H:$JHY9L/.JW5?ITFR.6*QQF#S.23 M2M6?TE$[K7E2!'G-E%C%YE-H=..VLCL4XUUSII)94&;5^MX,;?H<;D L&!W MZ4OU8+C-?"4"*]24ZV)@E>CQ6'8PZ*3TVD9W-QK9(M*MJ-'%UZVN4)PQ&6'# MDO-U?TFT_56 +FQH#C&WD#!%7;>N'(I0UZW(2;U>(/Y67;=!9>#Y<) MSFLZI-2:.Q.)H%';+=3X!N',E\&9+]IV"\]3LZQN+DOZ9LX65IFJ2+=3/H0? MU'<+P<_YX ?UW?H>?;>J;M-W:-5S=*_2R=JBZF MI0'Q C7>0HVWOLZYQ"LD M^3;;$]UFENRV2+Y-R;[-E,IMD8P:;UU/XZV<:DW TDPWL:#OUKF"^]3;@_M? M(Y)_Q$+4R NU.T*-O%"[(R39J)'7;9%\8XV\YN 1AAK=H8*,!4:"";UBG1Y- M]68#85$'R=^<#WBT;">K8*\[TA^[XDSCM5K\-W*_A L1MQE^CUJT/ L2I&G0$$-=>%=!G,_PZFZFDA%:&$_1>R6_)Y6#+/T]5 MP"<[+)^OV\C-^7;Y_E.&SZ4)? :W/IWB6[70OQ7)2(AOTXK\5B2?LC"_A1"_ M+X=_+6O["?GGBUM2;ZM0^,^_" ;_^_C?HWO"%,N ]/[W1^K'>^MDV3N"OJ;# MO(H*7!S[#G7(0)4Y'SXF C4J1"SB-FP?%;&@!0+:0F]K"WW1G#RT'2,67NWQ M,L.??VI 9C4%5N5J9LR=6IX#@-'Y\Y^_M&]=V;R/S*-+A5$M,JK81+7(J&+S M1B4;U2)_?Y)OK!8Y^@/_Q]WAP$@,&);87 9FJ28;#CK$?Y5)?72'Z(<*C B) M?*8"\50Y4%IV-*XF0BCC,XZBG^-;+1 M"$*^)X2\7!J]SC.]M"A/?8%9:H5VH3^?&$34A91K>6-;!;HM"*2+V9*4;/1% M)4 6YL&6;Q(]"[@&EA:<2!JJYYG\/6NKR>F-,W5$K631I98S;^%\U%!<6&]\VEI/ M/6'.$^G.1I4]2090'/3H)B@RSJ2>N_@/->E&-XHBO/I&>/6R<]EOYT;+ONG6 M!1YCIXS46HDX'[5S69]FEWJVT1SIW93K)/@*>%FJ 6$,.)?)>(JXU/7M-Y2V M0B"&KD6.#,3P=3?;X&2S*N:F-;,ZK989S(XZ6&X[O6)^5IY(.$,*IB-NRU6U M%Z .\&,)&@>.[',W<'[)#&)66ZNCV *LFXI2AQ_P4='U?.@NT0N'!@-5A7]0 MS^3!YEMSJEQVAQD=PV4%C!2TF1.UZ;=NTX+F24)>+Q6WS61EFU&E)B>1B> 6 M9#).DL]=^X'&6&(-K8(O-[Q3[^J%V42+VJHL.>9P MQ32G-%XKK#VBFL1Y7/8AH %?EHJ3[*7P[#;SI C/T$7)D>&9-F&\3$,;^'J7 MK@[&]117%>),KD:CL=-M)1 [+0+/O"+.DT]0W! MLW6YTJ8+Y89$,D%1+L[&V>2E\ALH27M+5YDBH+DLT+SLD8XY:B914]L0&9>A M-*4L.6KDAP+Z_G)8U!21$F3'FM=%8VMP @?Q!WBD"2*>N-BA )1>O27X03&9D;7V(%\"! M)!D &!2Z2AE=I7S]IS"OD.3;O'#V-E-MMT7R;4KV;29=;HMD=)7R%34<,S3@ ME:-V8ZC=&&K*A-J-H:9,-RK9-Q18O%G)1NW&HCXLP%OSN6HK&FS'C )<5QC@ M0CV"+A"3=VQ7JL@SR]Z'S0]R@ \:\<%:_$)E.98$MV7H\T9;G61UVH MT&F:+#N3FA41*S0[U?2HVM-G$XEDPT*%.)-Z[CP4"A!>41@%(<.70H:7*PLF MIH -L<2Z)FQF0H)G5=P8^(V( 4/SB7]1*^[,ALQQ\LU0 P8%.P./YL MGA"%7;\]7MQX3[ WX0532>GXI)-8XTPG+VQM=MGK$^1[\N(NT"U5% ]\_ MVU%E\MQ'E6\+65!_+]0EYWS(6_>&AJ:$6K[YH-.JM[*M?ID8E?&-4K=P2ZW7 MO%;4*0!N6K83N3[+XW(BR4^9=KM %('32@0=J&DJGB!1TA UO$'0]/V@Z67W M%6MMZ&FRD<-ULN?,5Q-EN$@GH[8R_&%#@XCY'"\6]=]""5C4?PNUQ4']MY(-9J*TDAU#[Q).0<&EQC+?!HA, MHOY;J $. IJO S1?M/_66$IW*X4<3NC=IBDIT\JRLC%\B#^H_Q:"G_/!#^J_ M]3WZ;_G#@,$5N\VRS"WP>J&[:4"\0/VW4/^M+W0\\0I)OLTN1;>9*;LM MDF]3LF\SJW);)*/^6]?3?RNG6A.P----+&B_=:[P/O7V\/[7B.4?L1#U\T)= MCU _+]3U"$DVZN=U6R3?6#^O.7B$H49WLB!C@9%@0J]8IT=3O=E 6-11\CA6W+TSRA%AS MB_D&,9+6\B#J9$*/5EKEZDCJX\O52&":797>#B82E?A@\<-CX;O5$&/4ZH8P MXRMBQLMU#(5VK5CK]YV6SM>J-EZ:&H,N%G4=0Z,]=8W,0M9$M5D8;IW:N).J M<1!*/E3'\!1);C.D&[42?A!)3E6V(R1Y#Y)(_>&FKDJL)>0297Y%T$6C-(KZ ME)_D:(TQ(VQUP6NW"ZE:-]%O- +5?WU)PE^N#$3A,U68>KT*!W/;/V$GQHIE M&/+"47_N?_C[O3-F[R>\UXT'$K!]9#R8 F;(&\MS?X[AE>-[Y8+Q\W!.>WH? M>Y[A,(H)__9$;=\[9^8NF=@'L(-'_=1Q$S+C8&9Q%PKYDY5\!_P/20M=OMY; PV M]$!B>&L.=K$-W-.(Y-\.M S 5X ,+M30('%BOFJK ;H!DP&\6C;@H!#CIK:J MQH"E$S.!4,;FX(U3!PHAD-B6NG #;R1&X?$8,&+(8&!-<2WX(1%\1MS%?B.@ MT!J ]I%F>G)H#EQZXW_E5G^>:02FI@889;JAT#R:5^R)3#Q:UXW< #]V!JFS;DCCNU+3T(K/4:^WI@&U7FP5Z MW0"^P'$_X)"S ,L 4-#D>@ LOF_)(OHOM4,[Y/#A?_>&DP-T,G"KH=I;=OC'5^KGPK-5*<.FJ8JT M*MHZ/YQ;S&J;U%3'_XW3GPR=?A(Z_0_:^MR!]K:U:*OF_1_:D!>5@ ,"9 #\ M_CT/*/Q)?XY'*]G4'#V]2:NF,@5,UX-7[ >^X/Z__%AXT^*C)^Z_>C1V]ZQF M=UMLKS*FJR_)]M@H-3L=O_L(H=X2OCAZ2UVUX0?R1"7N@0DC#Y!I76"2@P[1 M9G#-S]3;B\VZN63\'[\2R;OCUA[_#F#GPK)!A#&@]\M&%6C'=Q -GQ&Y;M\7 M^L(FVYOSJSXS74S]SQ.-.IO>]B;RNB\LDWBE/DI[/F= T:#OCGM4 =&P56>A M@M]6JK&)O\KF4':,W!L?=['78-V3;>3*@8YZ8^>.EX&.V#$ )[Z.++>4)B[Z MZ[2KE]+N-J,(')%O?2+,;[J\ M"'-?43":W5Z)5;=F&I"X%<&.@_\O?_&FFK7_^ ?_8&IF*HL@WS8=._1YJS,.3-SR!8\"341 5N M/OA]5S^.WU$PL',06_KQZ+&/GH4IJF$\#?D\+D3;/>&,=F_X%K@NJKTW?,F# M=-/.[B53(:<"OAS\^[__?&Q48Y)"O_XX=_!P$XYXNVEQ>8P>,VX6^,$,= MP\K^X&O[S^Q=N7_XH>5H4 Y^!A%0(%Y/5NT@F @\)^;QDM-$&,R[Q(H=Y 3A M_U,/Z_./' .;$\"T?[5K_.\#)+M8W,GP7#L(RP9^+1 &TW7N8R7RV;VM4U*' MGW .GSO/T2V4RQFN&LLU:V(]'BM4^;L85\W$6F*Z5<@4N&9!: 4G/9Y[R#]# M._;7KQ>'56MMH15KUV)\K9H1JBTA W]JU*:@3"0ZES@M%IX-HSWO@;W&\8U-Y%+. !;LW/^.Q MNJ<.#0L, #;H)M92II9EW,=XX)=E]\I-U)""D(!P_OOI?QV[@U"*OK*E+5Y0 MVP-EG2.R5%J8?)[=460:V=32+2X%4J9HKFUFTEVJ 3MJWAW'!/\-(1+&89\U M+)Q'"'Q8.3X._@<(\MT.7^_]K#='DDX(=)G+=.NG!/>U\=W/B!&4+80N']0'A/!(W.+KPO#WT&L)^+'KQ%N'>HO+-77IS1 M%<'WMU*%;=E=8?.9+@DJ55ZU#2.K695/#)*-BV3;LVR9U>?\UG!))K<=YSF@ M"LF[X_+.?[]:7$+I>HWBW(5#?P_H+PJ\:<6 &:2MM)$G&_>B?PK/YY8-=0K, MG?!=:F9,CCEAL7%L*#N:<\R7$TQQ7LV5 M_;./<.YIC/--F^\^,7M%B9G?&X,9H'6::]D;SG.GEJV!O\.L9FT,5KEO >0P M1]%!T:[0_/Z[%X"F]QZ,&2H9=\$.J*2P;.:LI$3W-S/S$W?W88')"*8R=H)W M8[%["8@&S MX9P@E$ IB_T!?6(2_SO#M:K]X&?B[S_WI@3,, 1;_-T'3.*+:^5%S%WXW\]V MY*Y8Z[PN;=&MS;J!E]9R<2B7VEW,_D2M6XVG-9XF^HQ8PC:+J;0>=JDF%R_RJN=(=Y2,1(B9J1E7V,WUR"*NK\%/)O5>+W6MT;&>GF^KC)'/\Y4WE M*^G)VW.5K]M_^ /701AICF7>&X>WIT6#0K;?RK>2*;RT&LN(G:I'E MI\=SMFN6Q.Z\G;4VG4%#K\,-B#BU 5U B\!V]:14XW#/.I256"@LAV;>$S?X MT<;T^I(Y.'+\^KTM?*>YFS98Y8GQ8.4^\1(#WW#G+%KC'<4G/@<]S\O$TFV+EB!WQ@[EZ.6F['ZB#:O[ MZ4919Y9;?-YC%C6"*SJM(@R&D:?BPF\.AH7_#<'DU4H2?NG9O3I0#>@\ CP! M,A4+A.KN$\KV3U"[+X_N$?15Q7>G4-/922$\H[721N'QK?VKG[SP*HJ,?W^RV'$7 MML1SUQ#Y?IC;[]"#GV&K2+C MN4M1>1ZH.W6R=CC2TN%OLN)N8STN&A<@#Y'D)4^[#>U\"4:K]KR%?+) /U2LT MRCBY*:T-?)4Q-?$3LVG%R4IQ9BX/'/IUJ8^E2LQP(@7GI$YY\M>,*%]EQ0M: MH2W-J/)8YQN$82Z%@9*E/[$.ICL;+Z0\W6+$^8Q=]4=IMSX3)X'7>;(P^UV( M\LYS!5=KU_PN:OE-=CFI[[$9O-R6<5YK%[*C'/ L)I]HU^3443YEK2>^L*E4 MTHV$OT[5-F$"C(T(A=[>(^=+K7AZFZ@U6Z;NBZ5:OLN5)K%M>3#HD@S-YD\A4 M&*4_*7^BD2/ZMB>FBFQ%+ZD;WVO1F]G0@5$2]E3)T#7#RU=9<7O13%8K-7H@ MJ)@X0X9[6.[)X\: MG?5D"'%\GQY]8=/P)'7]"QY^^]_$G@/Q5#^Q[FO*6 3!F#UO MG4^OQ%H.L%['^EN-;#S=J JF K;4MKS.:(YB6 XP#-K@!6G#4O0?]V>MV-42 MSR4H I?'BVQM;*]PN[)KJQ-PD'.?&1>G'QP+5R#FRFLU3,(\S@D#U%;#N(3L.*H;^ 2&)H>[ M96RNNE-K=!?+J&/5MJ%S(*_#@8DS#D% M;X?/#'_[C7UR>J;QF.,-9\"X@:Z.')MYHR!=!UXB!RU5@]S=[HF0(+ W[_D! M/AT=L^+U_)FK,E0!V#$0DJ*:P%[:?2OL7*6NH=45>F'R8F%L@MZ6\CI :2U< MREW[JPW0\\!%\V$'*/"1Y:B_82E\]>&3A_>$@=_!.H'YNH8Z"KMIJ>![L-.3 M>8K4(ZH 1^28,I7-23BQ>TK JAQ( _C3X]DO@%Q;H["673OLR!CP)%@":%8" M<(^M9&-W-E,V#,L' J'NGVY#A]6? FG17/A94-I@:+H*&0?+X6%OJ> =#GSW M;E%/T;5O)QJP!FQ46\B.%MBOM#&PR\!L]F("7P-71MN_.10:N)Q!&82ZD_T3 MLPZY]YC:AV%@"!VD%G=<>L/@)G.GS%Y- /.R8%6A8L4L!_ -P9XX=E! M*AKL#O.==H!A&M"'L&L7&!&<,]CWL@1/'P+E@F\&\LL!FH.'P0M(YKN#L.$\ M?VOX:Z-=&R_XO0PG$TSR+)#]T>=:+ (I36U/&/T2!(5S5:\.>Q"!QEO MP)9O@;H_C+A?47EH>6Y I^<"N=[>4W5*4, 7=\0&"OBXJL4/IQ&LU@X_PF:B M)Z7AA"K WW]'@Z6 108OE W I)@//%9(CF5#5\T*6MU"OL.55*%2@\?8DZ 3 M;K@:=]'L/\","*!.!I(PUJ!K&C#N,=]"'=KIA+R2-2.0D-!B6>VBY>HDL%J MS@#1@R 2-OI#^#6^$4(^)WJ^QIL\GJH]YQ[W]H5RO;#K&,D3J2>%C(!:Q9X M NH>S-R@?R&1!IN3<&0H0##X.^Z0(L*@ 8&-;P#!>\>K\80,P?K^?]MB*? MWGA"G7V8X/]=K"L]&=K:1#((BI$2F8*_I>Z#3O>V]?W1DRJPO1\7?]TO%YB> MJ8!UA>/3%IC0+B[5+W"255&*%+[],(SA/J M&Q^@6\$,^WB?;%6Y+F-\2YKH-7$^XILL90VSDWSCQZ\4$\?QX_AD&&*?5RA^ [%AA!:!$*H;D[KQVMU&B)>/##5;0CL, ;W@F!>5!0/ MH[- +'?AV3<((N!+R):,!H-QL,H:C ^>OA/$1&)35S;]M(RW%*L@*X,%5Y@] MOD E\1F"R!P(8EEURU5ARV^%$C9F9^7!RJY-X2'S.^*X:2K828V+H/'"MG9M MRD.[<+?#/W0L!Y(#W'W@QH4M6W<@%]H#0%I&FN'M\?M /AW+LY7PW=!6.P#C MWS6I?BLX[])'N_>]!:J?V7_W:AHT^S^I"5!+SZT*85?? ]GOK$HR5<)X4M^H M;C\UR)G"+/M^<7TJG,ZQ_)Z4T'3)H,M42W%T1DP3?7*B5Z:M"930XZ3A7D+C MD-\+V=YYF<"%-BZ%(#NV[?,YI9I6%'M]+XF7BKF9/)?L9E-\_R5);V':X?Y2 MWYK$L)#HL3KC2ABM-I/NAN9^N[\$DOM$"/&(K&DNT)F73H/NS.E=T@ZVWWZU M3?TP$,C&_18(/5V(,/%=":\56D%AT"O48K ![A\23,8.%?&DPW6P5[_/ZWK< M]QM(W#U\PJ/QS_+H%&+LO>JGH'?26Y #_Q]@LJT!(G8%X>9NKPX!"+IF7(L/ M_Y:D\5TJC-_'OURXG]_SZ$VIU7?LW6^)WOY6$S%'5: V^H!(1S4O8O:FM,XG^0FQ+5-,7P/;K6G]QN;;B=9.C$ZM["BT]-Y>4GZQSN"OZ/,E*TM/ M@V)W'ZV!_F(8NM0>13IC4.%<8&R Z83,< ),WS_@6(!/1R+ 2P^#>@?ZZ9G[ M/3L(ONQ2",XA8W=!S4"S=[&,7?QILWL2?) )N*4]7)P ["'X5&A.!-&7\7T$ MZ''0(P068$H&EL>]Q1!0&,XEB!/&=_'//1-@Q',?I I,YE.3#,(T\)/X?<#L ML1<8FD+6> P9!VB86-8(6O"/X6<_-KCF(+###I;BM2OP-*[ZBB6 2(///N! M(NT^UA^$>P':1+1-/65/$ 4.N1D$[553'0-_*C@B_EOR7A?1>?RE?2S' 2L; MBA=@L[H&%(>QSOVM/<%J[+R50*\>[6NNJDS-( P+TV+NO=3MWQ.N_R$E<)K[ MV/ZC1^V/P>P'!O.>!AOC!!CR;MCEQHPE\'^'-&I3(&3PA4,5*M@^*!7S%G!3 M,(+PK+J+V$/9/9;%';,UF&:%KX:B!81!-HX%ZR!"?T"-=;W_.7,T>%'>,Y1;$]=70ZQ&&- M5^YD6M-UM9ACRF)WEAV9I[$G-AZNZDXCPT]WU([*+:EJ/:%@I' MM2VHM@75MGSOVI;#HL/GRTWV921O*#HAHV@$G#ZT+IXZK+OT[W+OO]YXU MT* P<0Q=_GVJ_M[[/4[+/82<']D#>UOFDB'GT^?1 4/NY1 M$;JIN[A;L"87C-&_T\^_.,/6(C;AU**0%DD!N(WEVMKM%^#%%W?,;V.4[[P' M[&G=LNP\CG5&(,:G3C)(Z_D6PY;MIKAT#";';+))7_8_=U4XRQLT$^EZ3Y"[ M@Y$M;GN:WVS\^(4_$SF^M 2?.@-0=F?9GEQS5;&$IU8KSL7YI/#)O!KQ9C.U MPIFEWFHVAY,A[U1%>%PB<>* X)LD^.B\WZ'X?MC?>B@!>U14=V(+V(<_QBHL MZC&"1)(7E $?X8QSX4-V&EK\#I'U[6UH>?NH\1!UBDL,(P'U4A@3AYX07C= MK:7H@0X"9@?+' PY&*&N5<4+9O-X%. $V(^4Z6XG PRQ%D'T)J@D! H-W*^' MN WX+G!T@DK!H:<9H["Z+FCWH\)['S7 !9C2#5X+'/@0F%_)WY.-;*)@KKI6 M8#3P$7B9%^?Q._@;+@ST1'9IR_O(POTQLUT@AK=L,&"EV9X3X[11/-94#4T= MAP\0 $Y8\BR7IU)]G"]8^U\+WE#5_ M^A9[XKY=2M$#LD3@IQH@P8*\H&6G:0'O^.!ZX./VH; +L!+F6._#7D\MO[UK M\XIZ;@:BZQYH'WYY6S8?3BR8Z7%"GS-'V:!N]VE7I"!. @.5CQX&/NT#*82% M+KOQEKN4.Q.,LVJI-ZY*A!:OL/*L+OQ2SLALI-E MIXI[7:N-+3W9AJ'WA^J2^]O2 M=VG9\&+B^TS.7!ZI^RWK&*!W"'[Y2'=W]]G* F$ !8A0@ M1@%B%"!^$O(]QDXY_*8B==5\*S]D]*Z(9;>ESJ;:2"_S/@QE_ B%ZGZDOAFW M,S/)L759K34G^4IMW=E,P,C4TY&6J3(J:R<)G#3QFI1()WJ#_@3&2IZ.G)'F MQ$R-9XRX-.OL@,C,FH[I@Y&)IR/3XWZZS=NMCIBC3)M/]],%MM< (X_>SDWL MJ;;.S5*B.J7LBC6LCEI-^$R">#K4,#I^8FT,^F)WJA0+IBD0;:P! V!/1^;\ M&M[JYX=C<=G?](<-?]4=#>'(HXF6:I.*R23GT (I#)GYN.S6ZAP8>331&:8N M!CU-QO N1M18E22R \D'(X\G*B=LBDV6MW5]B2V;7;\E"TJ>D^CCB2I;MRL7 MLDH)GZ?J=#]E5Y-CIR$E)/SIR([!)\>%45D3Y[UVFBIR"3%)<&#DT3-[F$EF MMZND(O+J,#D;=>U)@?#!R"/B':\JZ?E!3A=+&#&9)$;)LH+!9QX1W^QE:Z5R MK6#A,I8GM[:6M?4N?.8Q\=4LE]VL:T1)Z+)B< MK0I,DULMV::_3%NF?;!W_CT9*UWVUV77*H;5\HTP$CVZ<@N2\FU?K/- MBJT6HV*%@D!5>3B2..+3H&20;M:H972MD]183==JJ^%$2AV_?KI=&MC83)?U MKH?5J_VMG2YJ!)?S2T);,,5QN:)<&K MC%L8)7 9>MH(K/^G0RM3D=KFIQD8Z*:)##Y*M1NM8.C1DN+%925)""0O+">C M5KLY8"F2G<"A1VN:9XR*/)#FVPT<'ZV$=UL MNTCVBV L<4Q7OFYWF&%JVQ9JS4K7(BI4:8XWX- CNK1LLK,N.@0G=LV"[EI\ MBK8RP= CN@96 :C;PD_IJCV@_#*I2)-!,/2(+E](ZVU#:%3%N:*P2\EOY]1E M,/2>K@L?2A=D&YX@=(!SU9K*ITZD>TDL80.'-RDP-%^;CY;$<%KVCY.#I\=] MZHGT5YH.!'$7$[AFM5#-M6)UH1EKY;FF<'\SC5!O/=Q+$]51];3L@.4&4X'E M5#!2Z;EAH#"X! MZ=/# P?Z\PF&A,@Q/[B.A4T P/%NP\]9"-J@C3(;GN"? MJ_."4#FP^O;?@C+@Q"S/A46'\#UWL0P\,P&[O+]N,A]X5QA[#8YHK&"%&;1# M89CU\1?VR82PT.\N5O_-N,-#NT>SN7_+P>GAPYF$@61K$9;2P7G!,B9X(0N@ M//RC[,NPU-&[/^_LVD'9VV;W]UW#@.BJ#L<6K*D,9A<>,E;#DX7N-#R>?;\@ M1]SY_0IYSJXM6B@%0<\!Y6'=0C'Y&=!\8>1J*5-UY!EJ;?P4PP+=X>C%@_?A']\90QCM\ [/SQP MFJ$/;L@+1_VY_^%P4E!Z=A."WH$2.GV/G>3#B_U"#QD_\FQ=>__6W=.(D")W M=!^%>2:B05-W*?K?A\S8O6_/F -_YN#YL%O#&(CVGB7[WS'?!H(1AA1@\>*+ MKOPN;A.\>#]4'CH6E)L+N_#/I$Q>O^R/ C+NZ!5LGP*O$0,/4& T +)K3^8= MB];A*M:!0>MP#>N WR63:"6N827N4@B:KF,A$F@AKF$AV+LDA1;B"A8"0=/5 M+ 2"INM8"!QATW6L!'E'H'6X@G5 T'0M"P&@"2W$^1;B+]>&X;^SA?H^C^K4 M&ZB^9%#M\A4U9^6!8AGPP__^2/QX[YZ4N&.(?5'7OFB.6*QCPW6"(.^HU$4Y\E&9?W3Z[DLAX_O%X&Q8^7ZY(.ZH9YWNR.7BX=3@EQ**+R0" MY+6+P"6@X848QRT*P57+P.]@ -E"D=M"'UW:\!#Y\;]'FGXV,^@+NP:PRNVL M&^$7YL5G"DYH)WUA9L'#MDAP(D&<+R\XYT*X6@<' 8.3 M4?=M_:@?]P=AQ?)RGJ_8$WSI3;>%2J+8;%;@V6[JQZ_D<6?*\[D?-P@-B=-T M1ZXO9\>&L$SY&DF]$FAX9SO4SX4&*^7T2^5<<2J6"(.QMY7%S)Q!:&!^_$K1 MQS=$(6Q V/#J.N%KI/49<(!P\,?5-:V^+!X\:07\ Q"OI'-V-5\6.51'GXSSFDHWUL+WUHPQY[!6."_6M&K2R MJ8V#]B].[4'=?N?58+@T<"PZF=!+5 _/JM6R;C>K;J:KB>P'.]:GJQGGNB9T,+&OKT M0)C;'KP1U?!,S0A&$(A>NV[@J!AS#2' W$WD.AJ!Z!*08;RA2 MN"KZ7Z$7WRKWCNVNJ$ Y^#?XW===8W-V+_N*R?U^/O5O8I"[>UN.0I$G3-_9 M#,\UYSI."6I?H&95-:T+/">E=GE\BD%Y_ _NZ%>L$!=PCZ^8VN_G#']<_8MT M>POHX @^*GZCBX-P5!]^=[-]6&GQWPE$VZZ;H M_FTN_)O3C>3\QNC^;;;VFQ,>558VZO6^83G_PG1_@21K4 6.\J9?*&]ZD38, MWRPFDM%6VD@-^B_LHB+6K+"BA=O,;1)6,VS_0Y&*RA?OS"[W"4"/GB@<^SZ_/W MRWA^6)W?E_.\A#JW1=M-:;56!Y]OB!G99-BIN&S :3&!.A\W3$'J?-OJ_ 4R MF'^_W!/I@RK\WK3E.53X2?>C!UWV2Y31:A3,M9#3F[G<9"[1F;$/=9F%NLR0 MEVN4AI*4WT>YKX"NB'7[?3G(B^IVKI;P$XZW8O2<01L)>E4=2VI@=L.4(U#N M8[O[PYW-HHYS9,Y;11TU.=>37HQ/@"G:N^-5RX3E)O+N[Q"ECP5;N!%1V=US6)\V9=OYK3EP$L MO#KR\5?0[^37?ES5FP/N*U>SH9]1=C03O,7]23&/YA78E01Y;UQF+3OF3E7P M_[:JQN;@.5,GIH*OCF(M=>&JL!X^1N'Q&-P8@EYS#Q>JP\_ O_#KO#4'-&S@ M=86&![_\Z<>$=V(E<::K[3OEM53%LS574QUA-Z^L;%9M?!1]VYQ^ M +?6G/MW!!<1P,>HIA,\IV[(9B7@E33O9EG5#EEO_C%XT3<0!P1YH4+/ZG'_^\ MEF5M"/-MP\RV'!Q;N/*Z)#9GK25WAX6%WF6-F=Y:2QL\R6YI66C\^$4R MIU?U<><*QQO.8+M)USIL8A%3EQY KEU7R3AL-[D H\# %>(]O><8H-I57*OB[:@(9 4$B.;!B_I_U@JO=0%]#O M>,H4GH/1K-$#J9H)A\"'@&G,7R#VC/C_[XUTA;_?H'_+-_CF*HL@VM MJ^G?(\U9&/+F9["Q[EY];S<%LP&_3\.[?_$[*@$^V=M>^+_A_ X>^^A9F*(: MQM_/)2?V3[CP]<8D_1"/V6V;%!GR*>#+P;__^S^'Y#S8E9AB&9;]. M%FTNK[$#QNW,5LQ0Q^[/W=?VGP4FY_V'EJ-!I?YIJU"[5^J35=NMN6LM?I+$ M'?-XR6GB+GF\YN>6\V!IJ(?U^4>. 8,&;"__:M?X)SH0/@3^#&0G%8M=866K%V+<;7JAFAVA(R M\*=6K5S(<&WP2[90Y:I\@2O'6FWP046HMEMAHR?B[]@?D*&:Z:FC/\\UGS]$ M4P9 Z^X?^:";IS'KJ2:<$G @4HXT7!'"WR0H>0EL82=$[FDP-!\;3Y:$L-I MV9?@4.)'B)R'7[L:2'^$Z.<(!CTV:,KJ1#8JL@L$V.',4;C$$]54@%G3!F]* M&\"V^K%GHKX8B-R\C*7%>55DR-S_L_>ES6T;R]K?;]7]#RB?Y+YV%0ACX2HG MKE(DVU&\QI*3DWQ)@>"01 0"# !*8G[]VST#@ !W2B )$'VJCB-1Q&"F^^EE M>GJZ__QS^M]VM!GER#@/UWPO(K;$P/T9PQQ"?\)RTRD.N!JQ[M*TM7NGM9#4 M= 5EXN;JT[LW( J1[.6G-Q;FF57G[;EM8(U_LFPM?(.X6D5&W>F7K/#",>V1 MJ#_^P;P/P$L*\M_*+BQSA[WM3 ]-V@U#JV_XH>M8#7](,DZ>9"^]E0"%X."=:8I ^X63 ;V-;T)>/A@ @69QAZ@ M8 J/CX!6,FYTA,L;4Q*GS:;1DO&!D3E=)"F(++IV=C#$/03S[V!T' HF9 ^$ MFN6K!V[A"FUP=<#!A@5T8V-L^SW!*"<60I D=D3_X19-O(P$H+FQ(8))F !CI.E-D$^Q:X;UB?X3S M@$%8D'Y*S+0G-E!N\@A_)=]L):.!>0T02=%$^-8)80_?7!P/I*XOH!6]=0*K M@LF[#)]! >I'F\*(9-RM:+T"((%\ 2D Y$#X4%0NEER/PQJ6![()#@ R(2LF M/8^)KXD)))2.:"KDS[%OF6,//:\G "H^BUDR- .QHXLHW\M0NSL)YZB-;UM) M<%A=ZK6)M.(;')O=P>!B/9[K+*RF9V9SJ3),C@H-^!M+88Z_&:%!YLG9 3=YZ# MZL64<$&,HPU>.7;8 V@KP'(@ -*=@JIR35'I6C*[,#.I/PD1=4!L_ ;7MX!P M< Z!UB6_ F).1:,FA2%<1LE/O 5+!-C9D C^+:D!\;O$0 :(5 MONHCEH'9B%+/9;&\;(5[I"O"+$:AS&&(GRZ!# <=_BW[[1E24_ ,8VS&\G-O M.TZB(42TQN3DBZ:[5.-Y P9_\R.5F=4>^%!69>#L9HL3E.(J(M9L.,T%:8+' M%>GWH>V(6:%!8?],4"T*,$26;N*"*4*L]#(PFA$0#!7'9H\!2V!G*PC$>3Y[ M*5M<0EK;KM2&**Q89YUC>4$]"I41)+HV,;OIF<[8-#)[?&:2V;MCW,D08I8. M4:4?G,6CS!G@XF=9U'C&72Z%<0D8V^7X',"NR8TB;-PKX:$P1?K9NP/I.EA;5Y$XA-_\^@U0)+WY#;&T[ZC::@.:>A*_ M6)0$#P[8U7$\_F2/69X W)PUFO\KDN,,C!;S\:>%/XN1>6^)3 Y5G_\/9G+- MMU!#Z1PB&", M_EJ7GYR]$2=5[T[Z+0D[@1=BCR4@Z[_T]"=#A?O/3U-H5-_&9 SIGXGIX[:%B0A%@L4%@ 3V)J'T%<-.?>D+ MW]#!["\RLQ^#*1.Q3G]BQ=M^<$U][YYO#[GR6 Z3WL2/4B,>,XW+%TG74PR@ M#S#$"MNZI:_^RC 8A"^+)O'6M,3>#R#L>M+(XY%3D)SOMDQPPL3*M]W1?[_^ MHK6FJNZ.OGW^\\M[?7KY:S:[Z3SXZW.?)RAFL]0N63>\ M)T']_??]QV\?KO]2]?H?UM_MGOWY_<,@DP35V"()ZM[IN6-H#+MZV/-?>A:G:_"5 M60R42.^GZ7D/A0((SKVZ\P'\]:WGO^5"^ZN0V3=<9 WMH^E;0^"6D>17-5/Y M59?-J]]]U_[O6)U^NOCSEX^_W+)?N^?@GJC*DNPJT/$.P@A/@T#S\#.0%.Y% ME$2$9^:U,DHKKII_L<<#2ZYTC\M?$?'CQT(Q":1>3(-4PI$?D0.#GCAJEB@2 MI\HRE3,ONINT'J>@9(B%&""L;UZ@5/3LJ&.QQ>-;D?F(DJ]@<7V6"1PN* QX M(,ZPNI^+0B8!E3DMRAT5#-A:PZ;%YD$QZM/ M;[<5[NS:8QT><.;$O.$&[IQ#X0;_*T#P5F#@9_# 01X_][]B<'1IHN-?EU?_ M?6]^_>-<'3VHP1?[VO^I;__Z[+6Q1 X!@F\S9FNIL?4QU4^TRN0<-M,RD,+O M&.4(';#XB9XT&7LB#AJ!5O@36XF29V'449SDVBA60BQZ8.]@=M/X]Z6R&DG* M;OH@F?2.0OSN170@SD]5X/U .P>=*6:*\VS,G(R2 I:L?,'5>Y&<>Z]:G_!( M/[R\D*Z"8 )3BQV<#^@<^,%*+VV1ROCD\Y\S& !EC.M,E\\_^QWS MM]:ONQO1.*27I3]6A@FNP?J8O<]N>@5:8B!K>LI"_OEU5#O_\^?SGOJ^/OSR M,'SW/M"]P;/7=67)18#O7^'9(-X:X^HIAM_LWT2^#QR-GV>;_(F'? M6\8V0>>\>?WUVQ^W?_94UGX87UUZYK=O7\X1.HTET.$-:D"134:)SSMQ)P%F M?&"ZPBP=P4\"198PT?TX4+3:>._-]>(9NYM?;BY_:]0_Y1./6.E'Q29,4&VYYKG_Z;US]>^[FX'*[OYD[R?]AU^U?[G1 MTI9I'@ 3(:@4WM$?Y[V'X)>KS[5O4V_RX7EVVZ;FSJML01P/3:. CA1REFB[43L](4L;1DTD:4HT7D^QNKQ-%?A MCV&Z(@YG@?3*8K.*^8?CL6-;/&U&*'4YBEPO_$&H99$"B6'PJ)OB@45F#SN. MTQ"I.:5<&QD-_3W[]U_U'_O/JS<7-RP<]9[@!SYM?_M^.O"L2TOKJ]3?W[KN\-?FZ%Q>31T M#;SFWQUU_/O-FW=?#?^+__7*??/GX-EK35D*+IZ<'!5&P/CAS)],N:> K,) MD!3XU6_>'PNQ[IM_)GWO2V>J-O_Q^[=N MVQMW/]TC8DD?5@",SN>O9OO/Z9WQ37_WKOWA]T[_?WK<<[UH'MU7?3GWR'?A,<\J+?NVR(]R3CF$3QOV__OWR[Q\^ ML*C[K6E=_O3/Y>CW:?M];B["[B'L]U^FOX6&?3NZM8WIVZN;AW__ZQLK0]C9 MBZ=\YP-S]I;'KQ\;J8S/R#.1P5K K)K]4!-AOK.?^7_^^MGMZG^\;?_[]MOG M#Y_\/[J]P?NKW^^71A4?&_7;\HI%CSGF%.O[1U%'_A^IYYM]T : X6U6\TYW M__[;_W#5^:9_>//^YG;R[>N'Z5%6XWBF.[>4+0+)\1ZY[#OB$B0R]C[=!]:G MQM_C-^_!5-Y^_%!O7OQVS/.,;_^\;_U6J[N_?S-#K>E=CJS;WE^#E4&>$GIN M)4"%=?'.ZMZ,;^]OWYL??OW:/G_SW1J6NT#)TC,UB+ ]N[OB]_.Z[_]]J?Z^^3ZW?4DN#%NQAF_OWY(T+HM=_K[ M1^//=V^F[*_?;ON#-U?O:_<(VG;]M%19\:!0"_V^\R8PG6_OU8D]>=-[UVW7 M,U#8)C\_-RB\^\=QWUZ,)[_<-F_5\W\^W?6GS=&O&)!HMMOK%)@\=ZZ0T6?W M0U$[0E2 X#Q(J2<;DU-A(+Y*7@+'3^5R+GP]]I:7*RCHTB,E>^KB@B4E;1WO$FZ4'GE7O-DH),*YE&7-L$YL@RZ%G_FL?.7MT> M6%3=9;ZZ2YVJNU2]NLM3RX>8W"'^JV=:5K_5T?\RF5K_JZX:S;^ZK*W^U58- M5=7Z6K];;SP3;Q5/7-V\^=CZ>/[I_)THFW)Y=7WQ[?KZZO.GOQJ&T5'C;^=# MXPQ*@)GU^0*RT6=SO&CSAG6-SB.+>N :)5V1I-DZHS2C:VFVWHU57WAY&QCA MPQ_75]?2Y[>ILC-8E^;J!@;AW_GZYOK;AQO^E<]?WGP]QS_D74-D"86V*-KS M>>+')P,YSV>'2HV_,U[WSHR/T?A.*5T_5I9"9@U=5-3S=6BQG*N-M?5"3YJ$ M405-&2\UWHE"MKT)[**G(NHTGG0=VY+,N/@AWH]V<'MVQQP>;!I@U397Y%>? MXYW%P)OX5E1KT7;[OIE4'(BR?@=>7#[:FP22-<2]O2S=,VG(G#'L @>F:_]K M1C>0Q:[/]OFA"X8:7E2"U^R!,?=B0@9>/[SG M/,,ZK69H9AZYQWNDV$])_%E<*97@W0&OY8C70WTV9&X G^.>V_7NN-J*F.3C M(6-J)\0_Q;)V-G#.M::\'0BP6_S,YP3#FU@G,2XT'--DD7>BT0BP 1[Q MP%W+M?C=#L!'Z>OZGBG.V?I :0]9G# V*L<<\'-JS)>\]U+%#@,VX%=KSZ3G MV@OIS6RQSW7\-5NZ^2(1&7$'4 MBC*+7110K*<;E>)&C9527OPZ=:*E9 E5A66/S?CO2"KPXFNH(C$TGE$R45KM M-^5:D7#:6"W21S%AO438 SE6H7@_/A*?T.SW(ZV%%$?1XM>V^=+@^X$(6\7K M,.]X;AG6=#!M\#YYTYI(/,-(2P=A312B1 )D5FZ"9@]0*_&TWI']+W\\&AJC M;M'DQ2/L0 '(K!,ITIIQK$=@S6A1)RS4-!I0SJC05'T2C MP4.0^ 1>1P=#%+W*=&!^KKB0WH_S%&#>S,2JU*.8O'<(:BSNBZ^)R1)5B.W= MF:X@TA)5S6SPBG*Z2O\(S24E4#.S9,PN0]D&@ M9&X2P);B>V5>6RGST@6B(+VPG#Z\ /TIGN A*"@QF)4W0L<'3]Z2J'1JKECC M9-XW1BR/P&>&2TQ.VJFD] MJ$@?0""QM &X#<%D/';B@B_B'7):CVPK@M (X+ MY$RR6^Y,WT9_+1&OR*WZ!XO@SU.":^9_N=,@OA]W$Q/F.?&VYEVLF WQRT79 M+;?'H3LSXS.>IFI"8&^#P ,VX7,;4V$_+>H>)!8&/X[9O MO-AVSXOK=?-QN$M[CW]/43RWJX8+&[X%S5%;MI79M@#ISV!1P [%FX2+J*KR ME>CYQK?:L,B:UI'VN_724H&"=&0@#C_9+H^^=;%(9F;U:A+(B+NCB)C #2\$ MXX,(WMG@24G/HRIW\7KBXG82?!F,623H8#2Q@ C"EO?/D+"$=,!3*247RY;Q M1GI12SQ &4I2"M%1R0G\-*K4,L5;C+JJJ_$>3!11C?QSI/$$Y=SI,ILG4YH\ M\1$5)&8/SJI8S VG*=*5*UV FP'S=6V3CX[$_\/S;T7-$NX0<6L6G>HS45YJ MF'"<%TKW>94IW(O\#9^&T]@[];&@QH3)D?1QZ1A.PIYW[TH\X 4.-N/]'H*) MN)@DJM#PM8)7[GCWHGK5&&NCH.S6@%"B$#G71ET@IRN>F_*GY.QC4?DH//^; M8)T7)Q9Q7LL]X-4 ^_PG?Y!4BD_0BH>1L9.6G+_.34)LYA+F"+*BH7$ F_P: M5N0%Q1KP@Q=(Y["EQ$XKEZC5P[@4S>]H7OW])H(:3'E MV>8D$7M\W6QK 1H&L,2E6ZB"8)8Q"EXU;CT2'P1W RB%@P_%A4<[=%JS6FDJ^SUZ?@TX7.Y!9 M,X-9AIVH/'2)A/E"\@;I+F#@9)O@"/.F'OR/BO33 MK*NMU)_ &,+$QD)G)RZ/F;(JR8W;6-J\21(*<6ZQK)]:S+"E#VQ&Q"=:6?4$#MN+HC8RX/',^@P<.EA M8(,. ^DP\&F'@?O>YX"+.DQ+MS5$MQ/\8E'J$*ML"A,0];B*/&)%NN ')DE5 MUJ3C4_)%'N*,S4RDWA)/!6L81IOF)"PPZ_5GSEQ(L#$I$X6>.=_&QY4@3:&% M VQ:E+KQ@JX$MNSNL3[C_=5"\R%6P27:/JXWY_'V&+9@41@%5?/UI!L[4=AE MDC=A(Q'X#;#J%9S.>-!)=[5CD9"<3%_'VQ/U. M;'TZ-/#22_;$Z7DM;$=7>.Y*]EK4BC/VN/<> M1UZ!X2.O!V3E&[G5P0EOX3--CE@V]E"[HL<9<05KD5CHZ0@6SAR2Z&88J"&1 M ,R/6!]L$?I-5H%!VB @ ,8Y6BFYKL'#14M+E\4GXBR))A\Y%%#<$,H&(>R;Z,>*)RZ*&3,X( M>!C;1M6 W=UX^T<\T./A&SQRP^_,V9E['NQBT6&BP\^OO8531][CD=,KI6&V MFTDPX?'R](.)9(.U'HGG0*=%T4(/?7F.BUE,D(N6(RZ)=DWWUI^,0\P-6%18 ML6Y+7H%["@RXR6+Z6TTY+E&,RAD=) S 3YP^[IGB- HQQ@35!ZB.033/ /X; M]/G@:"=X_(DEP_'-&:\!WTW:,03,X?WRMIX;QO*&'DH$$B,C]3,F;352+/ [ M+1'VA^&"TC(SW(4-I,\9B+LQ4#3"\$RRF(Q:1O[-(FTE]FGI8;@F3!PT<1R< M;.$C*S*K@(?-.&<'43?IUH?V8AS> M7%*0/"(T4!,WTEWO+M--6_@!\9=B?W$9R#QP64U1J2_9[(+#P")K"RY0-$RL M)->[6#>K##'V=75X*]+XE')FZ?%HC8=&EVS(17A!M'I$?'.;'[=-Q@6EHW3S MWQ,2&/O0\@HJ+QP5"KXHZ/K%JI\S??W2)?S^%],/I2L0BQ"LD':NQ%1#7Q*; MHB _$L,C1.?<=1'Q7_DI&;+Y+>R5P#6NO4_<)V[=!8DNF14%8T3=>"WNP)I0 M'7LE#\U>NDOIK$5FEAX[H9&;!!$?B=$3M1(6^YDH+..CQS(+?(F]31PIS:"L M4!GM%(J9"\4T*11#H9@"AF*VS/;].E-AGQ,5ML>\W\[:F6ZPF7B@&/5($D?" MH)^EC_#582!AM98[F]T?+Q"!-EV<\?+L$40-F&?&4TS"H9Q8J?CL-V[$WIL= MQ]FNN!/+#_"BPVO>DRG:*?,.ASP*D>JO$O63GV6\@7\#VZD?P)]NX!-V$O,V'(CD8I'N!Z/1HB!ZX;2 MTK]/F\5H"K&)3 EUZI48H^@#GV-3&?_. QUG0G'#[JVW46%&UI&_./ZJV>6) M4&S/BG+-!@D$45@A*ZHQ(@B M,**A-#K$B (P0E.,-C&B (P@U5001I#75!!&@(T@1A2!$:2:"L*(AM(AKZD( MC""OJ2",(-54$$:0UU001C259IT840!&D&HJ""-:2IT8401&D->4+R->ACX> MI.[ST/1PA&CO0(B]'D\6>LF6Y^"'/S[3FL\>NXDT%%6/DX[BI"YM_"#QC 0I M3F?:(X%PW2L3L[9(=+D9^BQ)%GF#.8))ELM^%=2><](V@F6!%KN@A[1%=;5% MX['*0FLJVGY9_E1ED+FKG9,>V.2ZEUH/Y(.+AM+:KZI\*BX^6Z&'J- (%/O4 MCYOB/H?5C\>AP::02S610?+RF&!$-:E"CCH1=.+]45OG+V(*>3F/,YBM#FH;B;AW*< M\1U9NZR] OZ+*5PX ]/EDUW5"M*EE+84Q*B@I"%[,X6-QDKB@T2F4?= M\JLH6*5>] M39L62=,UV>AT\K:=AU< :RBS1?)=3K' <@-&4U5%E7*SB$9,/?VTZIF_#4-@P^1[OR%+FT[XS MGRI%A95I406*?&]W4J+)=5TM]TE)\>"Q,@FJ0/#06DJSK ,XX9Z,P\9D MJ@))_W8YL4W9J#=)2/81[RHV/+0F&0?"/1F'O=5$++3T;V4<&K+:JI.,[*46 M8J'186CE39LM6,CL:/&Q23=.O?)\"9Z]LZTH6N:%0^9+O52B%N5D/<':E:0^ M\" N7)'=W*#C9UN=[(_49)I8 1A.)0V32\2BV9 M2J-5\KB,2J.5^>2,D$XZG4JC$=*I-!KI]"HBO8(ZG4JC51+I5!JMS#J]_!EN M[WPO"*2Q[_7MD/+8Z#2'\MCR/\TQ6G)#+WG_F>+!YQ3RV Q5Z=!I#LD%&1_* M8]N7\6G+FDZI!)3'MFA\VDJ;C _)!1D?RF/;IL'D5N;F>5-MO""IJGSB&KSC MN:8T7Y!]H50U2E6C(S!*5:,C,$I5.\$C,$(ZZ71*52.D4ZH:Z?0J(KV".IU2 MU2J)=$I5*[-.+U^J&F:G,9?YIL-;$9B]D>W:0>B;H7W')/8P9F[ @C/*6MOW MV4VEJ'",7IXE4'QT$'.L3IXE ,=)G="0B) 5*673SQ(H"A*18[7\+ $XR(J0 MB) 5.79WT!(H"A*18S4'+0$X3LJ*E*R/J.F8OAUU#KTW!RR0I;$Y]3W'D4+S M(?H#&XT=;\J8U&4NZ]O4493.G8J2'[:?6IZJ;+2H]T^A,\1V9;S6S//J3*5X M64'X5E!5[SWM:S]MVCJ@JJEC9Z$3OW96U1VE1:J:X$NJ^EC97'M1U9U.AX!> MY&2N7;G>R+.I2AE96;X$K;GPSUO3PJ7& :#^[%>?.6;(>I2I1:]"15@(=B3:3B-]*L]F0:CH9&,E#__:E=TZ-3FBV!/IN$T MJDJ F] MI*@+F^JT=:!'!R7Q2GC.PK?5+3)0/!M&P>N1%E MJ$8>S/_??$,Y)Q*@HZ,)2F@26XNZVJ"#BNHE-!E*DTZM"?9D&BBA:774J4G= M""N8T)1K;*KJ#"?8DVDH<$+3(T^.#;H$_#L1AIDTGM!-AN!I,:_R"/Q6 MAJ IU]LZB@=_*$!BR1H8@C^A6>7!1 M[RA:M2U!B?/!M#8?_\8+34<:;&Y,2,EA^S[F(2.Y3?)8B?3C=G:S+>LM2B$X M5'99B>!C:$J#CI)(+LCX%"8]K43:8SOCTY2;[=S/<:HN9"OSUTH$'Z-%"6XD M%V1\"I0 5R+ML65IE48G]T9259>QE2ER)4(/Y58_)=*XBAS[SZHKGC14-@6O M4DO>>V6Q$O2)K>!YV=X+BY6 [>4].B.DDTX_9A&R$@AW!9&^]QID)6 [Z?0J M++F".GWO]2Y>5@.WEU>GE2W&#(:]][(\D; M,Y]7.:-,-CK/H4RV? I[MAH-ZN!"J6OPCN>JTJ0.+R0)9%\H66UO^0+U.N4+ M4*[:DH8NE"=-8D&FAU+54A4:G6Y2%1J=;E(5VBJ=;A'32Z92%1DBG+#32Z55$>@5U M.F6A51+IE(569IU>OBRTN:8"5V[(?!:$<3TU2D+;]TE-I:A0P%Z;V\?-Y;I! M:605Z*^):6*:HE.:&"&=+$ %6FIN;0$Z1HOT_^DWT13Z7R7]3T@G_5^!OIE; MZ_\Z95I5LE=FP\BS@<")<+S@F5++FF7*DLM"2I1Z@O&BK.)3[YC9JJMT?E.E M?IDJM4DC=),9H'Z9V<;);9*3*C7+5*O>(HW035: FF7.68%FG5IE5JI5YJ>7 M'RMM!4J*H 512C5 &R M+T5*)2NTOMC.OK2-#MD7JB$F[$N'[ M) MF7PJ2J%5=?/+)B99UZ*U,!,9[V MW*)[+Z7-=(LB@'%3@0^\J4"7]3V?Q:' T'S(_69G&5E*A0@*5# LQPN:#37W M75.E>+WW*F&'OGI9*>Y5$+ 5U,=[+_:UGU0"-?<]1L6XON=:7Y0W3&J:U'2) MZG?E5T%>;=3);2YTT:XMW&:CKBI:M1WG\F5OS<(UJ6JA(E:B_7)ZLT\#V-.!!(E2]OZQ,+DPJ:#J5N4H/4$.YD1 M7@.$M^=-N@X[E/1F2/+=GHJ-'7Y9^5<;:]*Y4\[%QHJ-"JHS0_"NNBY?5C&L MV%*[E2YO4^7(W&N&%1L6JM(A94[PKK0R7U;XJU!2NW5\J=6D++#<>I/PK&\_L%Z,$U6- MY2=F8S9^]]AY-9568RD5YX ,,UR#XO8"O$*B]*/T"8@T8J8+9.E/'#'/\6EHB)<]^^[U#_!/_![+8::/.G[XJF<' M8Y#;,\Z(.4$W^-3A]Z%@HZH8*',IR7Z6&38S5LUBCC,OC9GP?#Q"[OV/42:8 M'Q-=3^UPHEV.T4K1)?7O__Y/>CFS0Q/4IYY_%IO[%/DBRNALS\[9F M]N']9Z9S;TZ#V)/H*,9,$\9S,S@2D*[?2ZF?D2H+3!N9#[44X2*M), 0/19_ MQKV$Y$,OL$/; ]^!.69HW[$YKJ54N:XIS2S+ZYK0L_O@V)Q0&*G@A"D-?=;_ M\=E_;CY?+)41+A616EFJ:6ZX502M> %_!3P$B4"8FX5BGM3+*+B#V15+1LI& M5,7Q+3&O+!]3GE3$1'6!^*$?OS4:38OLZF-]N;JNM-8ZZ; 1@RJU(OFIV \^9A&S/P%NM@+5=U6OT[Q.]ZOK:&X'$ MB ,Q8M/E-F+$@1C1)(DH!B.T#73B/4A,&($J:9J,8*\ MIH(PHJD8+6)$ 1BQZ0U%881Y#45@A'D-16$$9O*.Q$C MR&NJ%B,V%<$B1I#75$I&;'^1\-&'IL7-@-O;\62AEVQY#G[XXS.M^>R1ZV_4 M%<.83P<]YC7B;*)+]))NYB517D376KL;) BOW<.B9E<6K*HO%87:$U]WU1^ZFZX)J-0S;J,E\R5#DW/;#G"KG' MU /YX**E:&MC\T?'Q6)=XDZZKNEXJUZMTWG>YP:&5"AQELZC+BAH4MP3G,?WV$DO1 M=]+%T'0'+"=)(H]]V^()I4+)]_FBI J^^MPII+K" \P>R'02] DZZ\D5A0;I8@<'<7N M['?S5DZRD-TANT-VY_12C,CN%(0LI4@R(KMSK !B.EIXV)9J"X7NL:QENMAO M;B'!(Z]KDPBJYOPR@_,^>.XTFW;NJ0O" M"C04YT WGR8WAM:0VVT];W?T\'*TODW :M'(*4I8;JAHJJJH96VXN: OB\Q MC ^%V@II<@R]%6^AN6MRO:G)#:SMGN\NJ: BD*?Z-LJ.#U+?I+Z+@=H]J.\5 MC"R1>&ZEOAMUV:@W2'M7K]N]#L)\BLK[<9&E0T[VTO:9%4J6%X3!LAY29Y1J M5OZCE]-,+-O4"O$H294'/FPJ( T.GC)60!J4MSMFP:%?J"574LD?.(NK@,)= MP3;(!T_'*B#;2:=78MHS3*>DY2/ UQ-$$H%!7(6JS-D2J0]&]E+>IMN6'DF,QZC$/T(L)C18I4 M@>"AM94F&0\@P6GER2;:93LJ+44$K3Q0J;?S-(J54@N530T@X[ 8-2N/Q&]G'#1-;C=5RBYX>L"L M/,@ YS['*RB5XC79 K(%Q>L)DM-QBBZK1H[[A J:@J*U =D(#*.5YT%*&7E= MXNPRK2ZEN,.BG+63K;P5K.M MZ'0R57I!*105R!Q17;!T0*^IRD:'\AX.E117(OPTP6R0]2'K0]:G,$EU)=(> MVY4U:\BJUB;CC667$F=3DYK!74ZU5@KLTXO?Q;<.]\+ FGL>WT[ MI%PW.MZA7+<])!>HJEQOE;Q]9 GLR"GDNAE:>?O<%$_%4+8!F2/*=5LP1YJL ME;V+6A'Q4_Y<-R/7<@=51P19'[(^)YSKMJV]>=YL&2_(VE0^N0W>\5Q56B_( MOE Z&Z6ST:D8I;,5Z?RWV#2@=+8R'Y,5'/J%6G(EE3RELU4P]8'2V4BG5V/) ME=3IY+164*=3.EN9=7KYTMDP@XVYS#<=WN7 [(ULUPY"WPSM.R:QAS%S Q:< M46;;O@]S*D6%8S0.+87BH[2T7=+2JDV6DSK#*9_,%(H*9%:.U6&T!(J"#OR/ MU5^T!. @*T)6A*S(L5N1ED!1D!4Y5B/2$H#CI*Q(R7J6FH[IVU&7TGMSP )9 M&IM3WW,<*30?HC^PT=CQIHQ)7>:RODW=2^D@JB@99'NYH]-49:W9*=NA:[&5 M_-YSR'9%@M91U&IW$2HXG@NUY$KJ[CTGANVGFG-+;AC4&[30J6&[,E[72563 MJB95?;Q\K_UT(9.;1HY>=@4U]=X3OG;NTDR=.C I.397/L)&LF=3NXQ(SHK*$ ZU\[;%6J8>0)R4"@JD*TX5HK6 M7FQ%2S9:!IVNES]':W?30/4ER320:3B)O*N\*G09K3I5Z#J!5*LM*G U%(TJ M<)4[8RKTK-M:UPQ83[*\$5YQ-$/;4^7# 33LGDL1U2S&GDP_W_S#>Z<2,B. M#BLHYXGO+0Q9K^=XV8*2GDJ;]%2GI*<3D(-"48&,Q4DE/6FZW&RUZ:"[>EE/ M=I[@A)GC6EM/OZ-%YJ.--CG(26XFTQY;F2)4[3:KM=:@LMQ+A!W8OE.U MUH>L3W'2Y$JD/;:S/K+6RKWW2=5E;&4B78G0H^59VN5$ +%]\'$5.?:?>U<\ M::ALHEZEEKSW(F4EB'A1FMT!:I25@ ;E/5XK./0+M>1**OD]US,K@7!7,$]B M[]7,2L!VTNE56'(E=3HYK174Z7LO@E8"MI=7IY58(Y02W$XEP0W>\=Q06M11IO2B M42@JD,TYT92VK6U.1VYK;>I)1DELPL+D6-NZZA@@"T,6YH33UK;?UOZ- M#ZHN5R>1JM:F:J%E*PKW*BH$)]E14#"Z]?KBC#+.Z."*,LX*=41;;!I0QEF9 M3[(*#OU"+;F22IXRSBJ8G4 99Z33J['D2NITN MW)#Y+ CC^FJ4<+;OHYE*4:& '3JW/EHQ9%UK4KY8!9MRXFF]IJAT6E]ZZ!>* M"F02"MJ'

3H*DJG;:??NM-80%TL@!D <@"5*#;YO;Y5KEN"4C_EZ7#IJ&T M*)FJ7,E4RSILRI++0LJE>H+MHL3B4V^SJ?JRT M'2AQFE>FOZ:W]'(AY7S1=?PBY(055R%N?SPD=QIY)@A0SM@IU1A3E29E%)1> M- I%!3(Y5:\Q9LAJDW(2J,88Y:R1A2$+4[BWQM1RS X@:U/2>F-H M;0S8RI.Y*6E67!08C-L/?.#M![JL[_DLCA"&YD/N]T++R%(J8U"@^F.YA>H, MN:GEWP^ G-'YO[SNF+D9Y0J);N5S5JHU)+W7CPL-PVMR^UV/??05L68O>>2 M85LIY XI9%+(I)"/5?DK+X7V0DKGHW(.2N?(Q=PVYTQ4R)6\LKE!4-'; A:E B08$A7J@EGZP:7ZPL5C1!W3*;0&Y0/D'^%<6*!@;0 MVI3^15J[ZEI[L1)8T01U.ZU=[^1_V;Q2"%]6_*M04%@(#34I26S;.-"JM>\_ M-+1A\0>R5\<-%E4B0?DT;O$589''=J].XT9>$19Y;--"<"7M6J0;>$58Y+%= M^].X7E>$19)V/95%5D2[5H"3E="N>[\N5X1%EDF[\D#(R]#L.BS_BX:!3)BD/S(=>-D7YEO,#8Y/0T.\[-EWKW^ ?^+W6 XS?=3JPU<].QB#W)YQ1LP)NL&G#K\/!1M5Q4"9 M2TGVL\RPF;%J%G.<>6G,Y!K&(^2>FX0RP?R8Z'KJ)"#NA-M.T27U[__^3WHY MLPQ0U*>>?Q:?:Z3(%U%&YWIDP&I=GYFW-;,/[S\SG7MS&L1^0$C9?7!L3BB,&7]^,*6AS_H_/OO/S>>+I3+"I2)2*TLUS0VW MBJ 5+^"O@(<@$0ASLU#,DWH9!7-$K>V"Z(9G1G.1*)J>$.5FR*0^F'/O'E@L M<1D+I+'OW=D]^,%V^[ATG*9D=L$,2R"-YF#@LX$9@KV(;0)0Q)OX4GCO20$; MC) RLO3&9?Y@RNW%&Q=>SV"N\ [\'<@73)P0?I6E[G1F8\+IF,F2Y=@P O^% M?WO O &8UR&*/+QR@$3;U4D1Q$%:1!A$;EB"BUG4ISS-"/+J E1#/WYK-)H6 M>2';I4.W ?[K/-L4?E+C>S!F'Q@5:^7X=WX$?29TQ#T08:-LICRNY*MF-_"< M2EW1-"+[X<'> M),5.*J8:5"<50RJF.E37">O'4#'K#W.([+N1?==[NYLVJH?-3$V'9+J>T\LW M+7FK/6+^2?0_=#-#II>'B]&:ZJO%?W]XV< MB_G9>.L6Q+H9^HQ)(_C#,)"8VV,]Z9J-0S;J,E\R5%G255W/4H[DX=3E0=\D M#T*+-Q2CW. 7P=8%.FSM4!YYZ02!/""0!-D%24RWQZFR[J$?NK[T\O7&K\T" M]@2QIT!,7[BB7"J(W>!Y/YG0:IG0C2YEVG\\,GC7IF0\MUTI''J3 !0CU@"R MGPSC(Y<[WZ2RQ:'JS73,'J.U!7 +7+'J ,(K0LL%IL$>EBSBNM5:LW!0JK5D M0G85UEQ%9.N5XW+]E,J-YE!58.^[C 5?#+]9 \>R-C+!+;5-)\CG,DO5>GYM M.LPO9AF;C8?A!Z]-TI+KS78^U_\*M%\G")8(@IHAM]LJ8?!Q2SY -&4?&-SS M[;F[&B7B/3U3[E:?",3;).]?D-V35 MZ.1F62K/4WY;:AECQ(]!:+&$ACW[88 M18>>8*FH)]>BV2I,5LGFWNJZK&D4FR(!J*H :+*F&H3_)WALA/]%]ZT\^&\8 MLJYKIQ>4$^F1P62\B :L/.'8+HM+H/![0W&AJR75I;"C .]'.1GG@1&*\*V- M$.PG\U\=^66ZTZP7_?T;YC8V)?Y[ %7.I. M\,?#VTZG7#&_XL&^LF'":BUY[^D_!5QS%>,?A.PJK+F*R-YSQEL!E[SW=+D" MY.@7*#ZW_KZDJ#I+MR7I3AG=*:,[981L0G8UEERE%#BZ+5F,1+@+;S1BOF5C M-1D*5Y3L@O"_*U5O;./R&?+DE6XY)DLR'7 M]Y)8?TBW[5N(O+19D%\FO9YW)GVUH$]WSLI_YZS>DEMJ?KG$U>(V"4#Y!:!! MEXOX1^,M\XQ*U?^,$0WQTX[+@DD(WSHZ^5+IQ2?@G_-.-RR*%#H^-";IQ MN1S^=..28H3%S 8JX)+I7EHUEDS(KL*:JXALNG%9GC6?WHW+=\P; &N&4XE? MN,PIBO?VZ$;$)VM9%=I?R\2M[@',$0#CM>2MZE M!]^$"6W!I\Q4*QL(.W;0=V_'.V4*9F]]EIG!;"4# 839@F!VV_-'@NQB5EH) M()MEV[(TLF+C,\/V-'/&/JMQ]CQ[+26GB$7W C&!N. #AWS+GZB1 _+BCOZ+P]@#'5GOWI'8[V/R__VA-]=7B MOPMU92W/P?7^^*S][+'I=9UC7\^9VT)8S V9OP.Q/MDNDT;P^3"0F-MC/>F: MC4,VZC)?,E19TE5=SQ*.Q.'4Q4'?) Y"Q3<4H]S8?^,R?S!]3+GIZ)SKN$LG M".0! ?@B@U'=@2")Z?8X5=8]]$/7EUZ^WOBU"\\-)DX(0Q/$G@(QO75T.CP% M8N*2))G02IG0C1YEVGT\,GCM+)OQYS,;,&M;F,]GNU(X]"8!*,;@Q0\O[9/. MB025'?JF17TH*->+'%^C'PS1HXEK61"6ZI M;3H!7?\MY)%H19H!Z(;%)K1D=666O) T5O[@?6DL6];C")$3[!55$:\S#7T-;4CMR@^11)060G0 MY4X]O_+8U6+VL3/5"TB2TC62T#1=;FGMTXO,42>)@HL*5=(_^E)W,I1-7=;: M^34V)_P3_H^]U)W:C1ERLT/PWWO []B8V-=A; &7N@O\#:TAM]MZN:)^Q8-] M90.%U5HRU=NOQI()V558 3/T"Q>?6WYIT;.;2G4FZ648W MRS:RN4K1!$)VA=9<1617*0N.[DP6(Q7NPAN-F&_96%.& EP%# -4Y)Z:KLE- MHTT;=L+@$>]*RD:.6?T5@R!=E>3!M=\3Z+ M=9JRWLDOT;[R/"?DEP7Y]8ZL&1U"/MV4K-Q-R7I#KALERYE:+'$1(C-M%N27 M3*_GG4Q?+>S3O;/RWSO3ZG59;]#-,Y* JDJ KK<(_4_P G]I;YW"?J_OI=\ M>KIW23%#NG=V,O?.Z-XEX;_*^*=[EW3O,N<0X;&72O Y>3<<9EG]#(T86V'Q*2F[P#*GGWW^@?X)Q[&(L03]26-*0KM]+J9^1*@M,&YD/M13A M(J&I.:R/(4?^6/R9'\4AQ8=>8(>V!W+ '#.T[]@8\!2!YV;97E= T=^ M@>=YPYRSQD@)I"D-?=;_\=E_;CY?+!4!_!ETIS\RG4S,,?KHV>L;Q*#D]:4+ M^"O@(4@$PMPL%/.D7D9!#O($*D+; 4P<\^UC/Q+]S]7@F4'\/1-B( MMDBU\!?'7S6[@>=,0K9GE*U1IKOJTNC?G0+W:\^QB.K[H/JFJDXJI!-7KBMHFLN=']D*!4]_^[S]:4WVU^.]"_P'+4?1ZD6XK9R.( M6Q#K9N@S)HW@#\- 8FZ/]:3/5NAUF2]ILJ2KNI8E&PG#J0N#ODD8A IO*$:A MJE3LC/PW+O,'T\W*X6 F'[<^D!/MJ^\B :9T$J9T(W^9-IY/#)X M[27GDS9@UK;@K\]M5PJ'WB0 Q1B\^.&E_608%_G.#)ZX^J;UI&YEQ/76,RJ>QAZRI=:IV\;@EE[1C5,$@J!FRULRI:]E^0PN$P?QJ MVZT]K3]"-6]9;];WX%L<.?3SS;7#6M<,6"\W-^-$O$?JW73ZO9L:FEQOY=@T<^JX7,VH&*%_B?-6'O3KFMS1C-,+ MR?'D2"FWXL3Y=ABC;0YU6"K 4G?1$VU-;NCY'6$2_"O48>D$X*\UY58K/S^1 MX%\A^*\(YQU[J3OMD=JRWFF5*]Y7/-17-D18K253%Z9J++F*79BJB.QJQO6J MM>2]I\H5(#^_0-&Y]7L=5GQV1\P-*7^*[D=6[9:8UI8;1BLWWZ;R/*_4/KGO9YW'GVUH$\7+LM_WZS1 MD/5Z@T)=3[" ) !E%H"\KI%4,\A&X"_U?4O4_LT3#/'1?*MVWI/N6Y4]'*^"2JWDKK9JAOVHMN9K( MKF9ZOTFW MW C9='^S6DNNV/W-$0SAL.,EY%UZ\$V8T!9\RDRULH&P8\=\=PYO9]BV-+6G MV('K#-O3S!G[K,;9\^RU%)]M;LOK+%&J&OHZ-@P(R\NP'!]4/A;+U0QV'1L& M3\;R8M;9"6 Y/G4LNE]T>%23-W5RQXK+K-.^%[A&8@^^XJJZ42>U9 )Q-?VG MDUKR,M_J)$#\N*/"HO#V ,=<>_>D=CL(_;__:$WUU>*_"U5H+<_!]?[XK/WL ML>EX'46O%^GBBL7")*;;XU19]] /75]Z^7KCURX\-Y@X(0S]2(@=WZP4 F+Z<2LE/!5B_#XE MF=!JF="-[F3:=SPR>.TLF_'G,QLP:UN8_&>[4CCT)@$HQN#%#R_MDTZ@!)4= M^J9%+2LHY9$2PRCED1+#JHIL2GD\_257+.7Q^/>*%TO-P#=KX%C61B:XI;;I M!'17N)"'^A7I&Z W9+6ITJW>0AYG5@2#=56NUZFN7K4P6+#F%W N MCAS[^>;:8:UK!JQ'U>CV78VN6E0H10U_0Y>;[9SZ(E4H]$-%_$L/_9;]0 M=.H))HL$H,P"8,AZ)R?\5S,R1O@O>\>)AKZ/5F34<8)B?-1QXF1*[NMJ1^ZT MJ$_MWN,=QP8%X7^YG=3D1E['^!3NJQ;\3Z#EA-[4LFW*RQ#S*Q[L*QLFK-:2 MJUF9OYKQOVHMN9K(KF9DKUI+IIX3!;HRZ=C,I0N3=&&2KI5M9'.5@FD5S!2J M,K(K%">K,++IPN1Q$^$NO-&(^9:-!64HP%7 %=%+JGIJMQL-R@45<@->T4P M6)=5([^EUNZ<;I)62]\V#:[HBY(>50T3W)JET6JS?D5K-) MV5-T6ZQRR&_)1D>CQ"E"?M7N278,66N4+&5JL;Q%B+RTX?G<85Q#-V#^*5(V*W0$*ZQDF7W>@:)UUV M(V33-5=^G!-V%"6_ I,]7*!L*.'?3=.;Z=8=O2])YB M1ZXS;$\S9^RS&F?/L]=2*O/"_G-DA+-R*AJDYK!^*4-1V M$.9+B=\1L='R',<"MEM_V IIYOEY6>N;@;N/3 => M=CZ"G4@82"-S*KE>*,%,I-"3PB&#_\!S@=2;X(\2W[' ))4?7MK+@$X@R14D M>I% ,*1NI/ =ED02&,? MH^4C^,&T>U)WRD=@;D^:P'Q>6I, .,E\PM023#T504:1$/0U0DK?]T:2-_&E MON?#5P!%8^:;B*= NF<^D^S1"*#DVZ:#7Q%Z:.@S)ID &A= )8U@_&& ( +$ M7;-QR$9=YDN&*L-62=?Y%S];H8@J;'+H(^@&?^:85QLI+60#'*G\O9BB,P.],<)5GS0TGV:[E M,^QT+GVG&XKV?__1FN#:VHX#&)AN^EP+T!TS*\9D;[%8_-T5_& MMIU )*!V;,+YU+"X" A7--T YX'R^,9E_F J!6R 7Y &S$6YA&&YQ+K IT%2 MFP0>AV4'H3^Q4')KP#]SP ?FP@>& B2[UIW8#O8.]?YF5ACP)71!?GO2O1T. M4V3*C+LX+6 R T2X SXVTG[BA/AK-%58IPF*$JS.%$Q2/V AFID>BX>?\+NY MT]@2;5BXG="JS%9)U;$9(D".%UMW=L M!.ZAZ4^EOM@MP-=[@KE!X41KDV;)B)NB9J1-TPXN;6DESB<%I+D#R' G^\[N MB7%Q:5D!XV7"(^J_[-EWKW^ ?V(N6 [@!J-0PU<].QB#FWO&?90YO]C@CC'\ M'B6TJ(J!+FK*$7Z6&38S5LUBCC/OSF9/QJ(1<@2'> L(%(A)C X]%>2)"Z^H M*;JD_OW?_TDO9W9DA]L/SS^+0U8I\D64T;DC/F"U+G#IMF;VX?UGIG-O3H-H ML:V.8LPV#O'<# Y;I.OW4NIGI,H"TT;F0RU%N,BM%V&=Z+'X,S_*/Q(?>H&- MHGC&]VL@LW-<2^U\P+PTLRRO:V);L@^.S4FOD0K$F1((2?_'9_^Y^7RQ--JU MT1&_X9M(T)2H"5 4$K_@H]8,HUFAM*_5K8@#GIQ^@ 0?7Q/+M+KH,7="V M,GYV#VH._XLS $LY1E.2^ V)_\(M+U#<&L(#8)+OI2'@%686?4$X'/"<(&8, MM'AILY"+Y0U<0$]O,W>4=##WX&C=A,C: =9SG$ <#WIQG2#M29>"Y()5"S,KY>F\HQ,X$]^I[659I94.M\] MX\/@)8/D1B/=@\V=?[@QMT4R-$4]")UOABRE1[B/O*!GPM1W<$K;J)DY7]T: MFJY8-1]M9#^(38L7L"7#\7?BGX3RP2^8\*29Z!_FH[L$=,11DBB+1."F9,C3'O>/<+PS@P;U^,<4P=>:2]QWI#_<[W@D#ZXGM].]S6)BN2 M)!X;\\=2^TMPV+Y' GQGM)1&%O8J[%6D 7],S%6>BZWN) 2#]/N!<=\9[7DY M:ROM'5ZX5'SBA<76(3T:"'N0%JAD^[E<(+87J,.C\HAV>0,X>=S&X8)M]F ? M8 >A+];#'L;,!<7&'4EIS1>?XUFRKKYZ]W] TU?G_#?MU8MD@'E=KS07HZ5U MV"P=6F7CZZ(YS^:*+BTL#9X%6("<)E]&$=!G#DH\USEW)@NT^>=5I;WX_.,B MG^9,='!D;68_>6C,A:][5N27^QBL"1..;D&%K.2980C"-(F._F;<1,L $Q7K M!K+UHC.>>)ST@2&,!FPVK7\FMMA;@:&(Y KY"(/[M?CK\32$_8^^M>@&(&&F MO@>6)C0?HC^PT=CQI@"#+N 5-->*.**P84'H6;>U;K26$;XT,_]CQ;)^!^PL MX8J<=2:X3E;T--N%GS78+--+%&)F7&T6!\-Q'TE[_NG"V.K,C.#8/09VS[(% MX?F41WCR_*_X@ -Q,_SU+/Q7,I:/GWUT;CI]TXJ+?.*7HU^GTCPV%X5H>^+/ MV;7Y@-^^Q8K/#0T["P)X B8;.>M2GRU;V&.YOW:9W'J#$QEXKLN1.2!3$$WHR0J4,KG>X0ZARU1!R:HN45NGB%*?%XTA/X/:VT<;%HU+$!<'B'"Y@I&&H$DF%P\4MFL=%HT=UJDT6D1G1:5XK1H1V,)[EJB2)Y'CMH+ M82M_%R$+[J@(Q1(_$'TO,F^-7*SGPL!J:B>S:Q!I7@FFQ[:7;60Y\R.USCV# M+L-$Q?2BLQND.W@>?#G^EUZ2ZB#V-_AE6):-A^_K##YH!K!@1X@%;8N13RR, M*2"9JWGI69?CIC6?@JG,<%VESS0Q0=*F@:Z0P!^Z_S/1ETQEN1_ I!G(C0[($@,3R'"L:" KCC M%;EP/ TN6NX%ID;5M(X<'6'M->OTN*E\A4NP6W6>W]!G-EV(1#V=3;61+BREZR?GL\F MS.RR?)TM375C+L'7R!P\'IZG:]+/ENO7)8?;IY%OD0O$GIZ$!@CI9(5>4UI[ M1TB^*6B94&AV-48Z[7)?BRD:*IZ2F5;7%771N3=:2G/;]#3-F-,Y>O, B%JB M<](GL0'EHE5--Z;ST)15Z64J0).GEVFJ.I]?IJU.]]H=Q OI99HZ?]7-:.-D MMGWAQH#0?E++YOU^W=F:71[E.1Y M^"3/>46Y]*SI:6[,YO1/X;\LRP'5M)1&>?P>ULL.C?JF\ZCLA:VS.J5S_%XV MWC$?=I'GYV6/\+@@/MXUIZ\EB$YI[ )!FV7Q]9(N2F[L&5#%ELCY6YL'ZJ*D/743+;TPWEF MM1WT/OG3DM4BE1]EK,T4?CMUGVDW*5R:KI:H^]:2=,BG9"B(/4TZ-BHOC3FN MW@^%:W18;EQ)BZ$,<*_?BM<4G@/%-@8M4O^;G8#SP&/-VE$MM]0W>K:U+B\ M;8NGIP.O:RN.KRV/:BCZVCZOQ((\6+"YEOW:3A1[9D*JPN\B/ZK%AX;2;A(G M"L )G22B$'P@S500/H!F:A$G\N/$]NUW5[%DH_NZ;T(Q8(N$K0Y^ M^..SQK/'+KBEZ(WYGCS:^$'BZ;*':,FS/A=CBTWCPM6C9)M(T*\ ]/7'0E]K M*<9:(W-\:&?B35E8[\O7/,RB%RS<$QJ#YX.$]O&)L@X)LP@A:3?2;MMKMS(; M=HROYZGTBDZ+0BK%HA-M X T4I=54I=/W0<=&\UK3S2?\S-?;Q*8;B]XD114 MV!+8"R=1Q^X_CP>TEAD,9W=5NU/I^23@=XY?G&V!XBW.>HZ]2''>O/AO+BV! M&\=?W^%54W1J4;V%ZQ7E=T67+4+@I5WX(PS2X1:6W.YJ\O%G&:!X<_2.9]'F M8WZ.MJ1]VYV#@G";3O-//NS.W<%;:"YOX%VYU*7"K0J:UN6&:N1L1(Y(!(+F M(TX[#\&5K<#X7)-;FOHB#V5_5,,VIRROW/AZ1=[ZOTBKS' XNL.;)#Z2*W>* M.Y8\1+XIMSOU19$OW39F!UJ0,)SBOB8/8:C+[8:>B_T[FAEX:[NF:YW49J'IU%X\XS_P/Z9V'>F(TH!E7XS6"@?-RL2!HA$SYO@E;ZC:(8< MPXM%7&L>\J_+==6@32 )R![V?4=?:RX"8LA-=55D]"6_K_R:RBHNE%4TJ*PB ME54L0EG%C9USMNTGYT$XFEDW;=6P7<.IXUFUL%!MB_(,U@(H7 ME5X=EL80U2>P0P2NA9>=2 HS)$4L8$QX+JYC@5YSETT]+,D<"/]YKFO,K/:2 M^/*R_H-?V9WGW&%LZH*7%I'>1G6I%.P^UF6.S;!X+>]/@27Q5_GK\OP,NM-4 MS:-9W$O4'C3O3-OA,-UM4OSA2X#B%-YPZ9OWT@WV3_S@ ;?O;<>!"4O!I-^W M+6RW@,5!^CSVQOBPR^;#J0N+PRIT"Y*ATL&./L%(;?C>A % 0K!RN$D9Q/9B SRGO8B'F5+&43/$1X)!W+_.! M9H@9F5.DA#V"\9 7=A]K%8LJ=TDU.'@B*MK&WX&%22Q1UQ+K%@MF6&##L#HX M+!??, D%%^+R5@&L!BN6Q:6/XY+'(WP&!\^4/TZ5/F;PT4$ZV"Z3MW.N*I85 ME@$B8:<74^I/'%Z"VKSGQ)_1GL/M/ 9<.)2^:Z;KS7B3, A-7C\.\")]UTCS M;36J^4C <0$%QFON35R.CV0\#OWY2JD."\'NS*WWR[L3LM=3DN6?&,VVCVE#7* ] [O.T M]L _1/ XC\N!2<_Q4]P)Z>JKA:?XY]JK%Z) X<*?9003P$>4'\(RIP-0PMB^ MUK>MU2I(R#^^=S5LUZLI;H+F*8&%][S)0!1 Q=XP"!RA$H6FQEX# +=0U$$3 MC/5&8\?F6KSG61/QAZ%YQT1+IEB=H,7!4<^S-4#/>5G/YUQI]GF=K:B.USR5 M7R2&-NJS%'=>8D+^/IH^S-(0"S&BF;D"OIR*)NRN@B!F(OP&'B\G!(M$I+^< MNUBS4M281'4JQA(E[3ZPJ'4P-^-HYAW^!B2VH:B*]!9F/!+UQ/KH_@E1"AB3 MOL#4!KD,T(11OZ_K!N*'WNPHY"N \1Q&1>_MPD\KF?P #/F3'HQ M3X$^OPJ>@=+[RL8>D #H#T0"$JBU7X^E$1:=^,Q;X:7\G5^N:S]Y3N_CS?_; M9*1XF5#>+"21#%$7V\%&'4!B7N@T:NVQ&O'"I1GQ@FARHB#,N,V":X\F8.QZ M?T]XW>XW/UW=7)[SRIG!$.89S(II8B_LJ-G8JJIMBG0]L=#(N;7Y6>_A;;S" M7)# #N!P;Z9UA(,/^D%*RRU(Y7CB!Q-SII07%&O3[4_5 S<=- 66G@7[YZ=T)T-'TT4]&P^(/AJ\D45.,OP_$'HDI4*D2*/A M6H)T;=T>*H9D(:!037"&HZX]O/D6-;J/> M4.>N.^%EZ>9E^GT""]X53^#A$BR"@,,>:IYN*^=+=YUIK:$FL06CF=Z%KI;\ MI7NEK%'F.RSV %HQ0.,7Z59@-F]= K].QF"7@7=8<5K&8;AOB+^)YCX!@MYB M B;I:L[\]4P4=$8)A#U376E^#W*]+VNS;5_8 UH06>)4$LN-U]N.UMN8K3>* M)SQFVC$'_%OZ";,+VPC> M1R<%8B2ES\;F="0B"&,?'K;'O#MG]"EH>W_$1XU@A\$%WM@SLG)RJF78+9N* M[\?[U?3V*3W+?=1 YL%(+LEI(:^M[.#*0UZ;0EL8SY+>P@X_ZE,ZNS9QGLHD M.E:;9SZ[/I]=^D+ATC +=UE@^]K(-&Y[6N%7:_;^Z [C\G?S5E9*:]LW+S0W MV66=.Q4NGM6><"[6$'B"8A"@3\6W-NN*]O.6 M>"L*ZH/4@:W @MC@)\ /J69;J?4% 8O,/#ANW\]_S;:M-JBI^_,^TDW@L\V]DSFE=3GCVKSHW9*7"K>.@ \HXL9 M/;:%VPY%AT4TD?46VC5L#IX(XJ=K3&,7Y!'O1. MHTWBQ"TV.X[C>L"_@6^. MTLT(,@V/8=)JA":P@+6DR1G@PT/T)1T)(U]S&47CFR>I4SLZHYL[HZO3&1V= MT17AC.Z@SLWL3E#!G)M8V]M++BU%CDU3Z>S7L5GZ;M$[K?.(]@;2MLO;R9^Y M%X=!Y7/I&ON%H MS36I?J)T+GW14Z1SOEU)O ^/.O^F6BKV/7]UB[2UK='FFIO,-OL+C9EF 2W< MP8.#;[JS%EDB4! ?0XGX9WSBF7;T4[$%WE,O?1PU>\'RH\_-'G<2\-W\U:?S M;PX2FYBW'\IFQFS.M>=Y'"*R@XHN=E[4[RWNT(9O,]+MFF:/N+SU%G8HG,8> MU'>IQF'+N[!\IV>;%8(FMACK14HM,!TALH#543*5&=62_GKB#XFRA[V$V%JG M)[!D>/Z4-XZZUS'?L@.V9!=4 G/PN=^O_60Z/#Y\/61 W'/?Q^WQ2'BPQS($ MO^/!,&^;QT^%39Y-G.*+,QX^"$@$[F]GJ3$*MY8 1'[,,S^_D?FWYX, UKQ[U(YX5&7W;-'M M$27&G28A3XP]\(YEPKT'&1K:8W%*)/,OP@8= \$U0"9L!7BB071BA+MX,^HH MF UT\VR@631YV=D[3P##"XH0+X; LATT)V,>W([GP6<-^,)3\_@]O/NF M>2?.Y\912R:I9_N8LR3.ZA.-S&DVPL./ /;JO#<;/S\4T:=X2(S5:ZU7> S) M8]P ,]YC.88.CM]E/$ N OQ1IZINX/G=6:H5]JQBD9Z(1E; M>*) ^X@@H[I M1Q./4@1%[S%@EH\PSRPRQ=/9YYBUAEW%N+Y,XN@<)%/J/;\\ -.@ P%8)X0 M@$E12-.4QAZO9&_;Y^UZB%H2E<0'T+@U[@I^"])9T]TC^R'M;=V0=Z+A\X'] MC?9\OG9T5#F)B"CR$'WNC?@> M:>/Y#^I_)_#P+>(-V&J9.6/QBNXDL/$\,^-A;Y-Y^7E=*K?(24F=MO"L&\PC M&>!">8X:6G-8R&QEF";2=X19BST,?G02GT5G4EG!Q/'\UMB-YT=6EN5/TOV^ M"^$=;XW*B\CQPP/WU*G^\;QBS ;M>XXC$CNC_HUXC <>"_I=P)-;%X%HI6;N MS6:./%V:B')6LH:0&:>B;BB-8_:$/+D^1T^XD*I2*[PB,$)35(,840!&M)0. M2401&$&JJ2",T!1#)T84@!$M15W;KHD80:JI6HS0E#HQH@B, *^)5%,1&$&J MJ2", -5$$E$$1M"&KB",(-54$$9H2H-44Q$8T5):% 8O B-4I:$1(_)CQ/;] M1K<[#SK(JI_0=G8_!O'XG617]RSJYE,&=/VA1_GZ#^_'1:T*'4Y(()[>B+JM MU-?:I.,3XP,+@O@&K.GFUK+\9#"PGYAF593!II!B5>A K$ADE85()"7<'(" M\70OH:,8!7"AUQ'CH^>SW+V$31OVXR][&<<2K\5R\_DX)Z0 M>YBG$LQCI]#I'!\F3Q$67FDU5X04G1I%0Q#N-8M.LW4(TH3"^8.9/N'H:#B* M6IT5G&9K<235)&.&I7S-5M$)0V#*%TP&@*E!8"H&F RC^#1;!Z8] *E*NR@Z M7#P9):#5'ZL%&H;2+D L<>T=UN?BZJXW"4RW%[Q([JZ>@JCG!H='1E*.W(D6 M;_V+ E"\AO\/P23[$OY8BYA<5 M;-J+R0C'7G<>/4?%04&QVLQ*!E8M295WV:JI@*9VY+JNYVT5C\WD8X ;[_ = M>]WY@!LOP9T$N!MR0U,)V_DD3!Q[W3DI[A/!=L>0.QKI[9QR'XZ];G)*TMCF M=0?UW+?JQV;R,<#=.!EPMXZSO2P^N$7@X=A,?C2X2Q!LO(K+B:8K-/, 0[K< M6X[!!CWO8$,YH%#P:PY'7N3!LQ/ST7&8X8%C1T-F':QY;[R 8ICERQI8(\>IO#D*V\^.6PVY:30I M:E_:5(*#(?Y4$@SJI9WF&&+J\MF.FO;IG! M,-UDG2*G^:<_9(7> *'O>1-L5G^4JJ5[O1>E8D5AQ=,CLPWA413HTM2X;1N[1D$J*1T$Q M0[[54PZ&6D;N09,J"L>*E(VC(V8/PK$B>^/H2\T_O:.>HVB<0GK'R] $AF:: MA3Y^:LIL?Q9#,=4V M=7$X_FJER>+(D=Y0U#AN"#QU64)2R9R$GJ1**KXWW7:4TRF9A1 ,F(%CC@-V M%O_P*@>VKJ$)#SKVP^LER94M)P(%=DPVF/GU51:6+]C29F.U8JS MO0![7CTT*VIS,]WS9;2D.#-#L G4]V$_^I+-_C,N?3!@^G"7Z3OZIK27O? )4!PRGK2I6_> MBZ?%LX'D]:5K-@[9J,M\R5!E25=U79%^9]+0O&/PC6 R@@==3^I/PHG/)."O M[]W#V/"L+_DLJ<;RW N', 9V/Y+,4!J9\'70 "^D/GQO//%!'AA_7SBT XF# M2)$^P^0X!1R83R"9\(+ &K+>Q(&7@@CP41@NXY>)RW!+BA.L*XD:65 A)"%/ MD!"]8!+RTPQLH&L!76O W&6F#S(4%0D"!)K2G>G;' Z^&0+8W@H$V\L*">' M%S[KV:'TUK30=ME,X!&^:0,,X863 $6J#U#EEPIQT "K6(.Q95:X6II6@S5O M0QP[(A)G[C)^)1R((.NP?LB9NZ7-SM&CLH&C;GAF-!>7H.F)0P6:"+D0G6,( MK0",DX#;;@WD:\9%X(3EN2ZP K7@O1T..5=U5>M(IO7/Q!;V&)GTQF7^8,IU MYQOWSO8]%XD-C."-;"N0I2O74J3G2 )=??7&$!_P7[57+[B&7#JOR1A_ M^DZ#'4NBD7%F>!ACPYNC@23V %Y:+Y L$%D3OM#G.:0VS"$$6C!83P_T)Q;2 M'C+XO\^8-,6>")+9#[F:9;.Q+,?CT.QQF)^OP*$LW:-6[Z40[;,1O!L?Q8,C M^"]0 7\,[!Z_.@MSAS5Q$8(AO]-39HE[-6+97*&G* R2YHD9PM!,&L'0PT!B MP.[>TFDAE\!BP>?X>GB1-X[>'J2,HJ:T9B:N#^^S?,9G^!Q("=_ALFG:/DB] M,P'F]/Z>!"%'QHOL9-G*Q2HY0CQ2G$+ .,;3H*^M1'TLN6N+YW].F?@K%[T' MUG-9$"15] \NIM> SR^F'TI7@$G@I*3)TB)#%W'<$H0U!/]!@"IOTY@GLQWIM)7 M-O9@RH A "Q,6:W]*G.E(%82+Z4=+:7QA*5LLR]%HDB=NRX> R\N M\CUWR7#0OAV M\ 52R2?E\R*Q%/CX@G_XI=MMX\V.122/S!]X5U.\"\S^,G1 M'/!OZ2?,+BIJ%W"7\AZ1SC/W49;&H.TL>PS323[EKB$?-;+8W.3*(+1W# B M3^$HPO&\95/Q?:Y!)G[&#T[/4I$D:;\FC3X=DD8F9''';H$:K(4S"LB8TNI!;4 5B'D M6W4.*_C B7^_!$%Q^-P#Z9RC^:/IWS)@DAW<9E05/KFCMO#M._Z6K,Z+Y%XH M 8#T_G2>(HEP#(\PI*(-/PU<].QB#UWW&_=:Y#9 Q%TY1%0/W(BN# M)YFQ:A9SG/E]2R:_)AYASZU;]'K*?1;HKS=3=$G]^[__LU4L*$6^B#(Z]PL& MK-;UF7E;XY[GS8V;;'%U36EF65[7Q/YS'QR;TTY&*M9J2N 7]W]\ M]I^;SQ=+-SL;-Y@WL6^+/7U1=!+#8+[>*!3SI%Y&P9QHD I6ZLH2JJ2MR[I& M8UW+I<3%FLY$S0 " ;N>I#DO_'M!G\(O8[9IUT&Z7"^$ M/S,78TZP,M,!96ES[4[1R@B"*=+/WCV#" XOJQS&(Z$$97A>_1^Q-8-?BC9B?N#&34*S8^#S_WF 7;,7SKS%_#R8 _%'(SAM9[!/2]0X/.M\.LW[(DU M%68,W2K61PL[]E XTC2)#7.T'A_HX4Y8D.<.ZI$0O_!&8\\5<9T^F#L^,;'5 MQ^4';(^ ?Y+C%[<5C^=\/+?O=R8-$!.R((RU-L%;(T5PZ MAK;%5RU^9=/D*Q:\DL.NYTX2(DVDURI-VNOC9=FX]^%;N M(R,#BI?@LV!%HB*/RAX$@__@1NI;KS#]2*D MA1/&3.8TDNR'[A&-.XMV)E0B7[C!3K17UL&I"Q[4CE@PA^!;Z*.#:-R"TH'Y MH#C#6^)TI*X2!6FB5@:)S\*!K4.82WR+/X D4&9/C74N6!L^F!A9^#<")Y.X M'-<$!-N4/#DY,761)*2:C]C5%ACD@5(),R =Y)'H#O?=N;\'X"K1?<9&HO MN06.*IJ3&-CW61=@-@FCTRH6G>T&F+*@(!:(.;S15H^]1>GF2*:6@Q,8[G $ MAT/0\I'6<1YP5*H#]O<-OEW3(2=JLP=A<) /C5\7&W]BS&/\@$+5UN11Z*)> MDBQJ9^-F4QTH2 NIYD BR &'.,GBC'(VG*'A9\HH/;Y'?[QR",2]%R5F#0RO\7%122)HJ8(T.* = M/+O(M(YL2[HXZR"3.S4Y&GJ!\F.8)7V9<.&!PC!8L$EQ9L!1:I&\>9M ,Y,?82J5O+)U(D1AB@J84RV/=E$@TMEB@<4:Y^-]+D MO&";T'9/IS0IV*#B#GB;]ZBT%$G(LF:DL"6045V'#M-(H)S^#RG/D'YA%Y+X MFL4.,*[OZ@X9TU'YG;1>=J+O*%3.KL?/T'-VF)G&1)7&PM,4-JD#-C X69A? MQC&A=*.,M7P(#)5FQS(LL[ASKT\;FU#I2L5G\)X@MAVIS5#BSMEW4]RZB6YI MU]C\!!9A5H/W) +CG1@.=>PT%BB#/9!*=ZIZQ/ QEVF MRDPG4K]G=AMO"UJ;FJ'+$PKK:@P^0T,/C%]&K3\/8&,#F\F&QCE!*)2J=^0?:O9Q70JU.GX[2KT*EH0_!N:ES($"2 M35G*JK1 FE6./KL\?K&CK:ELW2)[*4M7Y;6EQT->SDT*LAL\/J$T,(G_[%M7 M!2)B^QONHC\Y(@^B^0HOSN\F"9R;A!-A8]P%U@@QF?:!L58/T@\6,N:0)K]5&2E?4:!]$(DY]TE5Y#A^4@^TG#WHD""_5 M]CAYA#0**9C8RF'-,T[]L>?[Q9?6<$"Y-2N-#]A?;$NP62OU4EQNR>2%70T\#LGN@"7#;!F^ H\Q?-EF /$+:8_I7*(;3 A/!D8N;/1 LH!"27&9>A4H&#=5,4?*5M2-E>.S_3C4HD)2W=/U-3V6$.9!UYJ!&F+* M3D)6]I )?!JY3;F%+8V9ZZS$.F34O*@))CMIHH') Q,T.-"N,(HD@W>R\TC<7>])%?,38 M. .5)B1H:-XP./3E:(71@D>G%-FEIK&3U!/TI+Q.?%Y:K!(MVY,63\V%1QYY M2L8@7[T+T+@8?-I=W8?R0:=8Z!G)G!*N(6H&*OE+ QN0DC=';_RKT- BR$C9933ERSU8<1WTX0H9"1M!V365- P:+);_Z'@33'2O-JB=E( E].9).Q!(S-2JPICH&P3G<]&'YD MC*EVE"B535=K+'/#N=60C$EOGZ)@I,!G9M>6K*4<&K =D#9ZR)-'=TH:[_2 _3?%/2 EG0<6VZ M;4,4UQOMN1C04F%\*2@_JXGB*RQ/MR-WT[)X-HQCSG:?R._*IT*,O3A (BW/ MG?:/+5&'^JA5[- +?"\0!R.PQ;X6"-'(HE!JTCS4C\QQ(@86FRH3+Z+UPQP9 MR&L9@"T38U$8P&='R+X&+0*,%^/#W$ST9P46'.C/6A&5/"TV0W&=DA+IH&=4 MVFFNZ%UUWS37+$*?Y\V+PC1VU(VS'1/JJ7 %5<1[)N+=JR+>5<3[^R+>MN&Y M?_]I:#?'HU[?Z@U;[:X86KU^8SCJM[O#46?'!V!'^>RK^&[4ZSU6W*>W;HA"WH]=LP50SE5U'7 M]M@/[^(\5 ME^_#>%'^MMF.2'$O;\DZ)"=80T'U"GGN(/M3B[9S%$0]NV[,D-!.DL@;I3*" MA=&PB79!#&K?(TXMFTK!^/$+8"<[*EE8V1I/"TZ9=?R -(/E4KT$/_=RE!5< M2R0/N\X1!M=BNHY1E[$L*R C9X2H$5A%X-P*YRN9@6QDR8J5#Y_/C=_L",AI M?+"#KV"WU0?D)KLA)^F#&YM+YY+(9C,2JWFERP_OD-=Q38PWY7I'=+= " 4R M_^\\Z)5!FW6'M-8DL[YB/7(\!ZT,J]A#RHQ7#N4PBWN3=Q/7L'#-#AYJ&DY( M)+!4E^)[#.R1A42);+)GQD44D0R"!O:)[=QR]1W&$48$N:"CBA0Z4>-E1?E% M&)\[+-/3.I+S<6JSJA&43W>=NQ:-/P@E6;28T1V&(O3',&A0W=01*F27!@D: MIA?=)IV=O+(R(^L"T+!B(U%BYI/V!J+")IK9^52M/-OT.!L/[O__YC_(W=[Q+[A"BR)68B%FLHB/)]ONE^H]CR^ M3QA X5!B$\ MOB?&Q@4%2VLZ\D&^EV99$40=:-@Y)"/AD:JV04/$@NTL,%.N MSC]>&GM3/XV-1MW$#J (/X /Y KJ\V/\+PZ0*L@C&LV^%'-$]#%U8T@+IF1O M)+);4A9_LU:CVT'5B9I! T"!/)V"04BBD==>5=3._<"SC,A>03.*HWPP=.P8 M2D(9-*RW84JR: $[HXAY<@(4D234/85'-$L?0633-<<U(OD<7> MJR2<6V-3D![CV '7^6N%@HTZ.#NDP6F:E)1#8"";C#*/JT+'0F01T11SD*Z> M3"R(V5)I2('^7"*.$TTD9A4 M5\&@A)9HP'+#>84SK^F64F+%+'J6SDV]KCZ-V@P3%V:E"N^Y281&J0T2K;Y" ML2BUIBEQ,G>Y6JTR,M6)GV7=*B7!,@(M S!9B#2&O1G8'ZGU5$U#V/LHV2** MXJL6$HHVHMU>-+[NJ/A=-0FD3"RRZ>55*A,*JA2V=13>4WP=!.3/9M&:D,!G ME2[=N"Y%'[)@"',>GYMWI+HB#Q%XQ_G\MZ0W*1RYV"7/?!,)%9VK)@P]5T M/R&K*,_Q@?2>IZR?AI%F'/*YE/\NS\17)#/%HG[6A>N M$B)KS&S1/,SYJ'UA4B]G%HWU!UWE:YZ8K^E7^9HJ7[.1?$VO:UMBW&\.3==V MAY;MN,.199O#7FODVL*T;;LQ*N9KP(RPJ'\@]&/0*1=1Z @7$QO#;M/L;2M1 MLQ(/"=,P5IV=!$.-CWOULA%N+='R1,&V]; YAVG1%B"][699*"Y9512:9A2J MS802+E-?2,>K91^8[3VQSW_B;?BC8;8/7/Y!,X>NA(,V!4:VCU5"8\!P56:_ M9>F!.F,/;U#HO-K%6M=F7!PNYSOR0>>59:[ UC<).3G78"%"*';22>KGS9/A9)(&7E:>C>9G M7DZNYZXH:GR+T;SC>W@^.<[G"):%&M[#=8N,(G/G(BT>>#)+E]^2QQNR> MPXBD$$S\=_1,(NPQ0=Y&EQI,;XE<@L7C=[2LX'>4X7EE5,MWZ(NJF'D.074R MGRKB5"P#1601M9)P+BZ4 N10R98M*O'1+$3/ M7,@JTJG,(C84 )*O6BV8EQSQ\"''G\ 0$!] U M7U$0)N'\];7'C76CG++>BKP@B5F-JRH-W7:HH=VH0@U5J&$CH8:1U6BX7:LY MM$?]YM!J6;UAO]=M#/MC+ L=6?V^U2N$&BX&E]'] M?/LN3JD9>/XHA-RZYXXL,$@P;W-3;%@5410R(&XX\>)8Z_(#=S'+R!(,':)( M.V#)Q+2OLLI!^\;&;!ZF@";R7MG",Q 2E<$&>']3"ZW4@)( 9UW%%)Z0XF[*P0WL>"/88 M&48.)5#Y/94J+3R/BCB)@S2W$88/SCW<@YLC;V$LZ6O%2AP.'\$^0VATLO3S M2EI)8+UE]DY!AI)OX=V&H9LC@^641Q]E!@Y&(RI"]Q:)*FN"RND*4]!>F^T\ M?(./N+TJ!D9PC&6D)'3 29AL*=:SG8ZZ#X(0 O5=':8)XCDJ@!;D8FJO2X,I MELXX9.2R9Z<%:;"4GW3'--<=$B-98O/&!!-*8 P9HO"]AK 9HQ^JXT908X7J M"_B6]4CC[HC0X[P5]C>/H8<7-FXK9-7">Q3N+//4_+Y74))8=#/28( P]H= MQ$&&KU?>R"U1FA4G,HHT8PS/L0WCIT9BYNJ<6S46I6* V;T?R*,X>9IE0BP) M;[APBJ5@43 P7H8N#1C/-3OWC6A1P.7%@V:7C!F?W!(2-X**-W MXJ-H%7*!J2%,*8Q#O=RFS(23+*6#FJ]'IK+=]Z("[57\83;^8%;QARK^L)'X M@^4XUMAL6,-6M^N ?VWVAWW7Z0Y[=LMQ;:?;ZMGN7&NJ._<&]\ M .XXCM:0PS5VYXHS: HKZ7FX%-D\0AUB8SG66!#$.:B8N::10&HY;;'H+DZ_7LANDX'3%7 MO#-\X;W43>#B+V#TW7AQ0A&"*]MGD_"8.U^UR@"T"KYPD$5&H'88?EI],FRN MIG[]GS']0P34/,LV7P\LR@]:OI-';M!-(587/#&7JWL$R4#-3J>Y?AD>)(O@E&[R2(E3B)/#+. MZ(V_%D]J);,C4]ZD:5%Q^_8T%K^J#_I2(.6EGD.)[["F*V&D2JB]8J](W M!>7;F"8SFK_6/E95>LQ2ZD9G,S_;[>JNN2 M[<==XF4$'LA&Q@O"/-G4LEW8,/T+8 5:OR+ GX#S_Z2E?UFW+XQX5:Z M:S9G8VE*V &G%I3P#[NC_C<%P=5DOY>Z1$SSO<%?]OG;-<36!*QO7\S8>\], MY!W3D4C7?/]H8DG+J2+6FMYF1:EUV$K9"3\XL=ZT5_Y\ZD'%13/],$AO$*%? M8A@\64.\858TN^VGJH(W3)6?F]UZ9QW"S(O]-TR5[Y3Q/Q)E*A=@"U16TKP[ M(^7G$V.OQ!5XR<1^77["VZ#DSIV(MT'&E^!AO"I*5N['=F/TY]>#TS4#Z\_N M?[Q:JI+GLA9-YRH;*H*6$50Y/8^E:96>6TS33-0^?O-7*;3'TI74V#LJ*=M^ M38]VX;0,5+&T@&('> ?:AUE%\KBH4-JI(P\?24"#_'DLP+9 MYSM9:$.@-<%&>R%WQ'4MLVF)ANT"U[GMH=5LFL.>U1\-S6:WU6J,VI;IM.:X MSAI^!F)=V6.1/+QLOK. [W"L!@]6/]MJ=\779]@7G)U/\!*8Z'$\,^J,NOUN MISGL-'JCH>7:]K!O=]K#7L=TS&[7:IG]T1S/M(=T\/9), Y?-LNT@65HJ,9) MCA7X?,RR5I7C>6""*M$["Z%"7U[,.7L&.QSE^V_^>MF%*K8,G,\3>)+:Z^VUMPX,CQ]V&=44#DW62]5=N#"$R:XC%SYE6K4C*#N)8ZZ2V;W$M(X3&]NM:/-U1G?"P\WIY9_C]J(W=#A MH^BTD[CQ'%_O6X[<.G!Q?6'J?.;BX(;VW.JS<5;QZF<[@E'*KK 6D/AX/S^S ME[J_19PUM3&&"!)I+ J-]G/+##Q\+O%>Z8R3&*+T:^V=LG23:=*9(5I2B.2HI&9>XX'(.+!36HBR#"GD+Q[J4.B^1A^@Q3@R:]SJST9M*#]0#UFW0D7_Y:75//6-O\4RW MRZ>KUO<-L^X@.[_J+9^E66:M[^!L3?SK.\_6+'O$,YVM>3TK#M[ (9N-MW#( M9J?7>WF';+Z>H.[S#+)3G:JV4>^[57G?E??]'=YW\53*MAHTY7>ZHNOTN]9H MV#7;8FB-NMUAWS*=8:=CFJ(A6M;(;L[E=\SV\;]^._EPJ M*OFN_J;E^)6ES1U0)F"%%02PFM]]' ZV,K-Y9BCFT M90+,SQHEWCPC[+JL:(D&W]"2%-FR7^\T7RE?YE7-F]VDJRKRME@WUX/G4"F- MHC7X;$M,&RG1USRR0HKL36$C,+J%5J'W;*)B,WOTN^A=-"D;]R+'S9^Y^D(W2;)--? MW[V[N[NKPPOJ-^&W=X/(N<7JH'?"O;&C=ZZ=V._,5K=AM1OO8&N;#:MK=?J- M#GSJ6+UW=M/L-EN-WG_%_4%K:-9ODTF9&'LDK5;Z81^]*$XXER%/'[D4E"]T MC4-&]PE\\&D-?Z\;>UYV%5># '4$'Y^2 MA&5W9!';2X*9E4^_RHXP4%#!5P=FC8ZHU]A+SR6@2D73AP<\@>)I0DB9)J"T5\FD M0WD*Q@QL>>_@]X6R:!IYOF$RW$FC(&F,-RIJK-=@_%2BYC480F:_89$AU((O MT1"RGL\0NIH*!VY$VP-QV77CAPX3RB#YQ& 1YDF55?%8Z<.+Z79ZOC]N.C0+E&&@OXJ#S%<,+I M ^Y;RIIC96&4REJ68J&%A]6$,1\O%MP<4%V"*T;)O)4ACY5%4X/J2Y(8C_:, M/=>S(SZU#:O/T^0VC( ,>%H:B -OBF=A984$7 '@AD(=H(5'9AA4)C/.3F'# M4!!)$#P!+RFQ=U:,Y*UN:[-1-_]:;>S7LK&W;G3<^6YP@*TMC7ZK<2_NS8;[ M?'9#6<]9>3QEKIA);6[7,I]1&.X0.;@(^L.$3 M]>!$(@EKA;KHN9_I\1\^GQN_V5'DQ<8'._AJG-4'=38>BK77-M9>U^>R]&]. MMK3,2K94LF6Q;&F9SR=;C"#:E.=C^!5DQE2K4;],?2&+ M!UOV@6GMV=SH8+9=^5=>HJA94YDE-7#(0#'[+4O*@7"*8DI_!SZ_^Y[?TFHT MEGX,YC_Y"#1T9Q0S8#U'CJ M:]6GG0<,[>F4V_!HCWK<_MQ9O;EM='?Y6;:LWNJVN[?LP""T[J<]^WZD7?!UA!_*/P^U'QQ\K;O]QN/T(X0&\'Y79 M3P#^D@0P/Y:96 P?U-?+KP>*;.MKAUY0HM;(;MTX]_7;(37^2 /U+U M,U8P8?"ROGPG5 N=+_3K6VDN_:U6^PFT(PS[]C(U^R*'?<%@*AWO$?X-719)SZAC>&=XY\SX'O7#YS0[@5;Z[/ MFV;G];'FP/>-V %IE/JR^4!R9&S<"0277\:-]OY>6YX9,<>5V!E8<<[Z4LUZ M=:QS$KC4288(C/ ^\ 8R['_T"+#*B@1-$ -3($"_#\^"+^V(T"$7N[W/==9: M!63X1"!#JP(RK( ,O^\8 0E;:+K]KF4V6\.^W<4#]/J=85_TW.&X8_>[PG1; M[9FCS*Y./IT-KK]<'E_)K[=_:"3#%VKD7081E(_OF<\JZV7CFX5VUU#_R0*] M$@XNARI:XVK8/7<_JTE;50;+#U6]PF _Q@:8#P\&6:&(K^O%\B0!' +8F]BC M S^ 88!VQ4C%(\^(H>F'<;UG<*Y=BJ:[:#O(J_6Q/. M<744L-VH]_J+HH!&J][NJWU.'V>$T%N"+MP8]+#"[%L6ABUHU"9(_)>U!D_& M*5Q_SKUZ][5.^35PWF/R.$^0 5M*['@W.C$^7YU\N5*/[ MV>&"*$O%-V^1;U8=4+X.)SV&5!4K;8>5GH9RNCL1]2Y^9ZPII@XC>@@8[+_7 MC6,[\A\JKOIQ!%2! &6L4/' C\4#?_-*PD=> N-WD$,6],MA,N&?\(E*GSR7 MPKU>)4$J[BEPS]Y%AB,UQT(U(_]QX#B(,H6)!)W!9N)$1LB_[5>LMI$RM>^- MCSP'?V480RW&&'KTM!X= GD!CL&C'8#G2JII%TZ?^23)*M.W\4Q?>PN9/CWZ M+I-LA?A[\3L,.K<:I0G";Z'GEN<'\WCH*'0?X+_;9.+_X_\!4$L#!!0 ( M -*:8U5F#$P9#$N:'1M M[7V)5V7^]+_V]Z_](?-=WG?^]\XF$H/,]Y%XK^'7>X)_'.GW3[H'G1:G0[\==X^.N\>.U\^.;N_W5[MT=7O?[VZ_=>7:_G6+[^] M^WASY>SL'QS\T;TZ.'A_^U[^ (]O.[<=9V<8Q^/S@X.' MAX?F0[<9A'<'MU\/AO'(.SSP@B#BS7[6TOZ$_>_M07]TX43SS^\\Z(A7?"WX^#\7FW M-8XOX,X#^+EPS8_]!]&/A^?M5NMO%V/6[PO_;M_C@_B\W6Z>'&??A>)NF'T9 MR,V=A]QCL;CG^/09[Q[!AR&G)W2/X;/Q3KAQK&\;!'Z\/V CX4W.W]R*$8_> M7-!WD?@//V]WX$Y/^%P_JGT(7\3\1[S//'$'B\%O+^2[S]66>[EG/\@;>X'7 MAQ^O_^OZZK?;FU\_.[]??_T&__YTT ,@C3>[(KP]]WCY*+QS:HWW(A(]X8EX MA9SCA6LEE3^3 M*!:#B?Q*P,M]Q=IJY7B]T\K^@Y7?#D7DK+Y\9W?(0R[\AA,/N?.3R!,&_GTN M8EB ZL@(,,[A ]O9Y$3#)S/P3T?]7CHM!L.Z8!= M?(UZT.RW3>_I>C#@+M*0\Q[V@J]5*]AK.&P4^'?.'Z"4^J"??@F#9-QP;GRW MV9C):PXR&'/> W$^L) [;A".@Y AQ 1BJ%XR,"(Y&',A+^@3.K3UU*"_#/QN=,Y1O'1 M/G-VD8K5,\:A"$+Y!EXB ?/28@GY5EQ.CJ0=R7^78/P"9=*M_X&U ,&-(B>) MX$\I3\E<#A+8"Q\ B$B@1$,@:&?(8$FXF @VXHPX\X%O(WT;["]*W*%Z(%T+ MW^+EQ64MSUVU(=A3D^K>K85> 521$_)_)T!4B \D.I-B1^P[3ZF0:2*)-/D4 M@=M(25P_ "DZ$\Y X@^@:U#BPL=^X$2!DY!HQ7LD\O );@ B&)$/:.6Q,PA" MH%%"*(CSE%8WC\HY1L2T35@BA'?>?@X>&LXMP@ V BRE\ ?G+L@D%Q]S[R$ M]3Q4I>"K 424+D*XA-SE EZ*UT7)8"!%[P$)TKSB10QK2"7A#"^W_>:>T YCU/^5SIYVC, M7/49[@CAO[X&P3T0BG"9IR!*D 2WZP)6&?-]O)&?P_)"-E:D>7K8/#L"4*IW M:%-[';JOPIK?!VL[#D8&DY)CV#Y6]JR+8)<@:4OZ.HC[YA[KLM0_&,CHT%CB M >+B@%#XK$SQ)0FCA$E;6L'3.6UVNKON'E)LN=B(39DDI$@2:!3#0TB:7_9Q M*?#%];N;V_>7^"0_<#P>12BT?.>OT[R8V[7SF3\X7X,1\]\T%!P:;R(>BL$; M6'/GJ-%JM? _Q9LH[=Y54A]^/V^'>(D33\8DGV'UH&MQR2!Q M226Y'@,C1KX,P>9(MUVJN77 ?!Q .O:O3+0"9:XZR8ADYH =Q#R<<@CN$$I M#_#-T Z=X)90B0M0';!NN.Z.A7U:'CR']> 66%CMP>#LNJ"TI'7J3:306(CK M2%;V]2ZB@@OL@Z:,DMZ?\&!MUT2PZFC I/!29&/8)&/4R"@+\]:)EG9=I\<] MU/G5AA!I8?B#C%;%Q7(E@-. <(,[5%I=\C(^K;"3U-Q: HA1X 'T)/R!6L;& MMA<1=J8L0G/F+D#\T@I)(WG'PA6+O+T?PR=Z&]*>E_-.?&][1]3OJYH. 7B$H;#\T]:1\MLHN" MW24?NZZX=K-]ME D]&Q&1/#O;#2^^%H215.1)TE:>\[AZ;_#T/]GAZ8U'=A %X*2"\O",__TJ+_ M71C(S?^@7ED$9*L4Z_(K,\>AOLJE.(HIC#&[ Q\OY.S[/AL FYPS[X%-(H7R MD^/FXDNM:6>I4T]G2;XX%491#?VE M;QLQ/7@:QF.ISEPLV#;6%+N&+GR@LF@9.@61 !SPQ"J;(^:2CD(!_ M(" 62H*,P1%P28)^HF<9X6**[D:-*1,5C3KX^BL7HQZX>A*6O_9@I>3OP$\? M.5J;"'<%\P^<1UE0$MP/,$[IM@'\ #;YA%8@0Y Y>=9MMG>9RD:%P!MP,26 M_&0$2$#P$QXP*DH&>]ZG8=GNQJ% !>#_.8?/X))1DUTO.F8!# 7]HS\+((BCQBGYKR,+)GL0"F0!2D6M[3UI- MZ&F"NN'G^@\3)PA>A0XT%,@7]O/&'$OB(&_*T3NUK3X6GSZ$BB##!2DL7U@Q 4ZI0PG.5& M=(Z;K;._F3:8H=L=+8H/E]+S9V5&^G1&%D=+R!5 M!P@7U&06N&L&[E=^'WCWJ)LD0#4L9]A*U:]PT$I:<#E7FTY2V F\:;?W#OGN,Z,><,=L^^2CPO'*].L;??E=G_G["& M<03O^W_B?>#>O/\@N-<_<_NGW?99?Y\='I_M'W;Z[?U>K\OVCPPUFS>[PE#L-'?L^]S?E6[9/F M67M+0'4;@&OD(,!"$.H8K1&!C"E@'87);1N$YVGS;%M(K]:1L&TBW&V*A&T_ M7IXQ$K;]P-VB2-A" 8$-6"J/C0>T%L!H63S@]YM5(CV;(.FY$)A7/+ J"'ZA M(_JA+#H':N;_3D!>@SO0;1ZU\-]VL[42D#9@53Q7V @<@*.58H+/0BD; D*G M5D!8>V"TW3P^/5TN,KI-V&TU#ZLBHZ]0+=2&S)]+*WQ,SR$9:D#6'=U5*8R. M51B9PE@QB;1-(J53*R!L0&$<+9E)VR;DMIK=$FO@E>J+&ZLP,H7164)AM*S" MT.QT4B/C^MFT9IV L &%T6V_:H5A'8Q48=S8P).I,5H+:@P,Q%B-,:.4J:Y$ MM#&-42<@;$!CM"GF]MP;>S82+XLXOEJ541LZ?WZ-8>B!.1JC98-2L]FIKD3T M*E(Y:]<8K>;9X:M6&-OG8ZP*C.W1%ZM"(-,75@L8/-*NDP1\-C50*RAL0 ^< MOFH]T*YR'/+'?)ZRLT>QB/\#F*GC)!P'D6IF&@P::==8W0;.K !6#25D.P?J M*$&7]ZD4WU>=4RN[,8L(FPCHSJNJ1-]L6-X^N8B<41#%=!%VE$BK-Z.T.799 M2T('NQ&R/32[=WO8?RXRVD4TTL:3'T0$=.?\GX2%ZK" +WNR-9RR\P:%RU4K MD4\LA$UV91?YKF[=]B%M)U)][D#"=KJ"+VT&@PU*>IZ(AMB]A$4TM40VD:NJ MT:9VZN^'5LH%;UGN"#FR8 MMVB8W.0Q3-TU_0#[4'O8V0Y;?0 Z2W%,W0\586UQ'[A%3L-U[6DX>QK.GH9[ M\M-P,PZ_48?14KF%W=C-/LL@U#-I5](2J:"WI%"=_?CT>7/5"?X\A#UB!]+I MRW9%DS<;I%0\Y_<;K8]SO97P:4DO4DJ6VL^R'N@V]0[4L9.]*G%/=_X[D6I) MK3J:L;D>M7(O5RES]VKTCU(Z4QHE _UF:N@[ [)9!]/E=)QO-%=U1>@F(VR= MY/)H[I*S]Z0=G_+G(;']-!UP!+L)K).^@&^Q36K92<>"LG<#27*@1ZOWO,#V MKAGKH%==V2T*<.V=.@H][/6=MELPUT MQNTE9FJD[-0&YE78'%2(M%V5*:.#\LP1/:C;BQL>SX1=&)APL,OV9/6J*OH2( MR1GGRRY-XGCW:B[TQFPR$W*[V@- KDK\U*72[$#O' 9>7_DD^OR-E';JC)SL M<(^=YR39P4MU/T7RU.Z1XF1S[41) ,_XF41KK#(2/HT>65!$8W^$': M[#UG N"L2M3^!H4!R6?S&4CV3W5L+*XOG3TD?R#A39/8Q@R"#X*FU".]6J6@6$<$DL0M7"L3+:HB9'P;(#]WOV*#1AXTG* M@1%-NRK.)\B"+^V.POF>L\O19&"+S;?Z-D2+-@/(]-2ZK$UKUK#W_)5'! YM M1,!&!&Q$X%G[X[1R^YU6!.;NEYE(IUA-0N$Q+863,4CF.T&'PI6;J6V$HM1M ME!BBYV3>2R^U;,),9JF[*M8M]0/3+9P+88Y.5X:6P09SJ \ VM "G&00I&XB M54H2:0N1_(MQ"%:BH,%VTV\S%^5A"(.:28-QDXUKQ =Y+,(9CJG^R\?*99_P M@NN,MJ%,9)0ZS0"A&2$>U()DXV76)MF@X&#<[&D'TT75G_KM/W#L)&#D3J8- ML@!_8]X%*A*P&)(-([#'C2%?[69'YZ5;TC&Y@94RLR%U:F&:H90\$10B*16. M4"789OC*]#S\<[C7T.:0FE6DS,R*[$YINJ91G4XI(\]'0#A7#M;-BL5:%Q+* M>@@76?H?!0"FCQ87S6"+S2%L[9:>H[9Y W=>PG!=8NT1O2*%T8R2E4:B04C=I#/XGE!5$B#(6YP=!'OR[O^>JJ1HYF;W=VAMQSS+<+6 MXNAJYV8^&(XO_R'0C4#92M$K'&\'>%A<25T\_2",3<'S?@EP%K1Z2<2(!$@F M2IGS$*(6]'.2=U8821$NBCV0^S&X;TJ1R='IUS^&8*S%SC]I,+B:JV'T5?H5 MAZ?*;CZYU>T"KBE_ ,B4S"C?X.+@+PJ@S%C4GEK]1/(BJ"-R*]4[2CUH"8@> MAYW+>2]"&B)@E?C*427A4"Y *%;!8QH/DDZ 28/)%/QC*C"A+18Y2C<9C^%R MBE[C@S.@T\_T$.G"P]KE+#\<()E&/K)I"J07MH7&%R?Q3J?9:A=)O&(XA4'P M9+KIP,_VS,CI/-&,G$$2RI"1,2NG;^1$M!KT^4-N/@[^3()!:[LQ6$Q@'U*H MTQL/68]B#J!^0S6!&D?Y/<,0H\W0]6)!K3EC6U20B]ILR5#?9R!W&@C9UO,@ MMX:@NRL3])46EO>IXR0;P&9Q;:#S+ C=/EIB-A2F><$<@1_!'XDG&YKZE O: M=(Z:G?EXV5>7F;@Y/FD>Z>+'=## TA@J8E]A3+XNH_ %L35MTV1#= L&RE00 MH=33VIWE:MVH- _A)_&\R7X_9 _^7F;NO_*0\)$-"=N0L T)/V>1F"&EEO"O-R,R:S MBY8S8XKP7_B^UFKW%]I%"X=/UNYO;]Y<5QRDQ-FVB9*:)8JK[O5D#NRF57QK[06AOQ-ZI1Z@7CQ3N8@0T+/;;>UAZ41D'#@PRRDH M(0,2 A#&0J4E%?+*!=Q+$&+E@Z?*=_DKZ"P,VJI[.WCN%#8QGAC:*0H\T9?U MDLRCK45#SK-*;1R,\ 76)M3L!/A2X.2=7B2 NT+ZNK2812:;\NO*1K(;[S6 M#+<)'_9'Y:.J4@>\9Q\VHP:Z4X'M@%ARB15J8%X6:M(6LJ9 />*A\\"S@K,,0\@1OV?&2@@+?Q2I0RG=#3&:*FX8HS01P;!UP,LB %< MJF@--+5)A*()2(>B:($-96?%G (B6-D3&>'R&1ZZ::5288_IG$BBGJ@RJ!'3 MT\_2 VXS?7]Y6E/NDT[&L_/>&4G=8EN&^1;B@'!1&(H.[4D?-HMP;T0BIO""=9>)2H7C38UQ7V$;%#" M$93?,^84A MRG1PX2N/P7FYAV5\FT2P#!+@2%04S8BB(-2U3A)FDT+,$^@$52$(?KD_!5"L MK6)N!!(%Y"5V - +0A"KP^"M0]_ M\EY#WX^/1KHFR I4);.T1E&TQT,PPN_P4"$^&(B3CAK+R#01:\C=X,X'8=3' MMSH]P%"$RH/Z*J@E5$)#(0ZC1R#@G'O!'U3N9!RB@.X_O33<5&#S> V!39DY MJ%NEU3-'ZJ8\DMG+-Y(0:IPI?9.?<+KS%@"=.BT+E!^6I7\PHZ&K9"]+ TDD M0 IALF(IMPIX51_AQ])I53;=XX#3LA-EI%F5Q5N9493:;"K7E8_HA+(\(7UE M,"8G33-RJ(6"7ZBD,4MK))Z(PTF:@%P!%_6<)7&@ M^T.WFMU30@0UE%[7D.RC+K#VNINO+B>Z5I^*+<^'[(+I>TTJ8G.SQ+'0Z*5" M:4:57\FAU?-'3>A^.G*J!LO\Y%_KY*#5.>BTEVI37$L2.,S:B[=6ZSN_,8R9 M'-<+O/XR*)RF[**1/!_)[=9!JTU(-NGY!>/ZR#A-;G&=QW7GH+M5N+9\72V\ M#XFO.UN#ZZ/FB>7K:D6-N':V"-F6L:N0?7;0;6T78[.L*_/A9H-3O.\L058W *2]GIBS4+9;"J%8O/-?Q/4TW44W!(LDFRG&7 M'?FB')'Y)NJX9C1M<3L0(:!^UFJ#NTDB[E*P["ZO+P[,T2Z*2,NWQ#X<*X!V=S5&_R\1(U:\J M15+U,V9#IG^LT#H@Y?1A?MY?D4MIR.:C(HNV6D)^'R&?6$*V$GD+4)&%R2TA+P^]SP>7 MEO@>9]=:XGLV=2#3+9M^C.ET-(:X MJXLKT^?H*/CMW$,/Z70()TCB]'0C'C3"0ZN>#CP#H69KHOF)#><;TAGB04]N MQ-&*!U?F(#QGT\QZ?'F:=/B%=??:79;-X5VJAM>:Y6\L,W&J:!"M3BY*M?]YI[3BH M+Q27II^C,;6QP\_S?#(D-?(NAB+F^W@CFA$/(=,.Q^EA\^PH;^QOC/#SPM&0 MC>2*2!61:_W<;98Y3W59JC%8YPL2'UJ/S0I'XTEG[N9]##2YN.8P7YU:ES.% M4PX4.*8GUQ.GV$N4&GD."K-/LH&SV"Q,0J!>6?^5>PIVF^W%/:J<+W9;:!72 M4 .9E(#11_9G]C(PQ_C\X&X2J_/V1N_8' *?[P#^FH&^Q'2?*:"7U;>,F>A3 MWPH7G4\MWO';O5DM93()#M]*D0RL,Q 5 ^07QM,26E:-61]PV> PZTA!#2[4 M3N('_*:T75!5MR&2(ZS(=ENB!9^JI]D0XJ<#%_LNI MS)0DH'MTY?M0Y:@@[1:2:^T\J\41-9NA ;*)'W&O:8V%*6/AL-;&PE<.&C(" M5,HX1 WMA!M?CR3#EFC]Q.7S^\],:37R#$@0FCQ0H/]".:(*+(8:0M%<3IB2 MP)DP(X=!C;T%&ST;N13F$4#/>6!A",C%'D59(6-Q_LAQ95!T%YL&JW"HW,0> MM6FB28F:Q66;YA'#IJIAPI43$H9H:Z'CQL>QDW94+RZR>E[T!*LX28.34I?"%AQA# M'> ".?P GJ:_0V'#L]89M'961CA\$D'@8A,+@C8H.5&BD?J2:]U-<7U4%@1#:- M+FZ&83_= C-#B&(3XJA MB$B0 UZI7[*$C.JYAG94_I6X M3=GN+,%1">5FD6IN-=4[643JMHYW7!:$YU!N $.-H#& MY:072[:.()-;UXRG%7=,:GR8-H%7CY&-U6(%*-4'BYHAJ@S(&&C=E6J8^=_# M9!R[L R!W:6!+/%ON#.\8[[XCVJ?. J F0#)R8A("]N@,3 L&/9XEV:7BINH M18P4=;M$K$$8Z6[W%+.+'&!)'J8-Z6!-Z@L=,OV[@^_6Z%JUIS^*HGIY%2SD6'HZ*6X=#L:D,^GIJ'O+>_-'*\;D%$BHW MLBDS./=A:FO(W+2R%%/KM3QX1*;-P95S$T7)= =GPZI70[GP@D':,?$L^6'@]>D3F#D@P+"#-,:XLBD98.8*%&\!O@ >W.?JU?@#^DOT9R"[J.-S M@"E"GT_@3[1-@PG'9S!$ ?PK0S6F0W6O;$P)Y>(ONZ7V*%KJ%(>3-WV!%Z,] MW./92#79H=AL*(Y'P'0N2'B0B MA2,<0X;.$78M!T*[X]4]Y4M94S($\68C^T(RN B-S-Y,;IBZN(0U\GQ0PBCK M8@WA TG37 +SX>OGEW(8FRF.>C$0KQ'C\$5KIU*.4;XZ9=(QTZ[AV^> Y#[B M4KKK#9GM("4EOT)J$HCE/ANQ.RW;C$=([+@>$R.\'6L&>*@_]@$UOF0[Z7/B M="4>SSU!=\5&/=B+\XG%PS<5L"#;]>QB<=T,1-[0.Z;E [^008PB^P$\^"@@ M:;!KHJWQ>*1=(3"6)QZ3E!MK6<-R%$S] CCE(;X+7]H5/HL3'->!5@$UGTA\ M^A.IA,27C+PE?OH1A0?&*/!KL%=D,$'W+DKU2'KBJ=&:(@H3DFI0T,G+EO 0Y,M:7*\K9W"RC]3C[3[>^ M1\R?+KIOJV;ZKPM1=:(NJFLC!9AZ.DK'J6D068*%$&^D>^2L'Q7:'<.O&/PG M+8^3U[.:,8Y#H:0BU,. B+#H"G4[E1C0O7)\\X#X!.CP3[!L96+8($)3-6?2 ME1H;FP&WB;BA(0QCJ91875\0XRQ^5@FB3!PELV[H,$\D4ZWJ/DL1KS M4O8&*'O5,H,B99NTZP=8S@F2F9 \U0:JI22)""7YIFC+L5T9!3Q M4!%.1E^9ANW)T5J!3-,\"&0!F>52TA0,+U_ESS"GZ#52#XXX(>?"*4M#4V,% M\S5?>4ZBW;))"9N4L$D)FY18)BEQ7.>DQ"=0(8 +YO,@>99:IZB8IEA])^_(*^Y/%5"&0^G/FZ;RI M->43")E5G1G5'P7'&A&:C*#G@JF!D /I8,MV=],OUG4Y9%*C28MA"38*L-*# M5DO.MBJAINW!,\WC?.AUSRGJF:KIN4@3,J5+TC^J6)>JWX*'\IE9GY+"-.W[ MRN6;M3IEH\/-Z]-GS89L=HLN,K7P1<+5I3J%J;DA[HW5I MNM6>^XK$Q-+*090"/;B?CCM(,_>!K&"LN55D%"OB3D, 4B23LGXES594< $5W:'G(4NY-(%>&V[O M+PG#ND[,TZ!?,Q#A2.5GU"_(;Y)O].GW=KNJ(#&+7.DQN9HT- R,XC8YMR"/*F8OM;O-PQEC*0DEV-D1US&BP MK$RX.))O(Z46^8\QY87H<"E2GZJYG3_ONA"2YL W=T$L5+1;#G17'Q8]5&'$ MT&5P@O/I5:KC$^GIGK(E;H^>10'?VEPNDXN.,D)5,5HH*B M\%B>6DT1R(FL5B<=[IDE+,8YDYNVIT\M%(J981NX+CD2>2(%F[EHLUR@^*.> MN$Y18)R\GH3@UO(H7[%/1P12G:87^]Z@28;IHQ[>PR+PI4?I#BV;/;7Z.OWVE=?'G_@?YJ M7V"*DIZTEQU22,^@XA/[N?V!;)'9]93"IG=L^B@/8!-$CGIK*B :ZN7Z!YDA M*OM6YC_U#W02A)X(B_'$=XY6*\XP)]U=?G KPY^4.EPNSIAEG;X'#9;BK_(S M#F4.,6VA*:@P2UI1*Y&S3))*&*K">"'SK(5B=4+7-$ S[E*BC[*9"/PQ&V.K M*1;QOKFL[YR/2473[.^&+L-P,8 KY4&C4#XO2V+RYKJ2%$:=O,<>BJ+Z \?: M-D_9<04@?.EJNXH_./\*PN_.-SSK,O>Y M0Z1)].C^ZJ2VLSH^8'K9E/FO M>,E>FK#&MCVA/DHR 'S+2A&\V3B+0%$#Z8RII@N:.LQ*2[TOYDLD_ D.8M07 MM.!7GR]HVWR!S1?8?,%:N_6\M?WRP;R^6W$9KN2/!,]'6JL:W/.6\)K1NN>3N6,EM)7<-);=!N+2DQ45Y ME:A[82)^I;Y*8,)/]TX!@7ZIPI32KR"_H5_:4I5D!!GW6%&6[V& -T\ %N!& MAU@P1F5JV+P%?*W-AZCF['T-RAUQKN89(6>DZ7TM&U8?JY1CN%:6OE?<-LTZ M<2J1-(3D)A=J==UL54[6*_"O\7 LKQJ TM<0TI_WL?C@7$H?#$G,E0GI[[H( MZT(GX6MOUZG_7[ Q=M<">?- /FZ>6C@_ 9P/V\W6B07T(P&]W$B".7*Z7EM5 M= 1*+QHST)#=G;D[Q,D![2?:X:('EW*NKXJ_ZQRCD2E8=+A0;_$)[79[[S2Q@DXX9SX[O-5XA#*Q^W8E-6 M/M9M>_7AK7>3^;SKM01#WA M6UOW=QGA^QE MC[E)E H1YQ.UM:9"VJM@! )\\JS+N_%C?H?'YBY]YDU >T0U@)F2<5A)?.W? MBS#P$5ZPR&LW\(-1/199$,A7P?/#;,SB82KQ;";>!@U>\J9LT*!NV[.\M2V; MLKQ5M^W5A[=LE8NEMZV6Y<]>*V*K7"R_O(@=V2H77>7"1#AB:9.?=P$+^Q7- MH>4YKUJA^V6?M]Z*KANM(FBQ\<6#%-+=8N[A_9 MJ\)V/'C*L\NVR4!-#[_;)@.VR<#+ ?3V^V-U+8"Q!6Q;B-09.UP_2)1 M701P*SRVM+ ML1MIX/9ATTPTZ3P@3LLV\]K[ZKNRU':G>SA-'V:"L[4X@6S'+FR.WN;H;8[> MYNAMCM[FZ&V._A7 V>;H;8[^)>?X'I.C+YN]K4?R4E1K9B ,+,!Y%U6O0,\" M_HC6I*T1J!E1S=CAXDBV$?H7B>I2=GWWZ5?F9;/A MJ!W3Y&O)TGH6=9F,>4UXMQ' K=B4S7K6;7N6M[9E4Y:WZK:]^O#6:ZDH^(16 ME_.'B'S!'Z+OXK5Y0C4A-UM4\'**"J99QK++MK.+K2OXQGT1A(XM+UCQZ']9 M[GN=G0ET:M\/?)637'RMK967.I7QMVT);,F#+7F8+PYH24M&OQ\1Z[:U$;8V MXMGW52_[S]9&U!;.MC;"UD:\Y-SF8VHC;&%"'3$ZSS2SA0G;B^KRP@3F?\=F MAN"CX_7AK5=4*^[>%@;8PH#751BPF5R0S??;?+]-C]I\?^WA;//]-M__DE.&-M^_;1A= MB_MC@^PO -57-[I>QMN>[F;LNG%NFW/\M:V;,KR5MVV5Q_> M>BVI^W?<_Q->X#O?W.$#"V,[A."5R/)G3X._W 1^"<]8?MEV?K%I_$M09*'/ M)_O"W__ W!>&]-E^G)L1F*P5> M3J5 D6$LLVP[L]@R@SX?47B>I2;OWTVX=?G-]\4!*4 M^+<=_6U<;FLV9;.1==N>Y:UMV93EK;IMKSZ\]5HR_1^9[W+GOWE??$?[Z'5Y M.#6A-9OH?SF)_@*_6%[9=EZQ>?[W(N1N'!2I?8VI_:=,L=DD=9V3U(_/2-\' MHC\O(7W0"_H3^&<8C[RW_Q]02P,$% @ TIIC53@X%6O4" $RL !@ M !W;&1N+3(P,C(P.3,P>&5X,S%D,2YH=&WM6FV3VC@2_BNZ2>WN3!5@&"9O M9C)5"4,V5&U>;D)N[S[*ML"J,997DF&X7W]/2P8,S"2DEFRXVJ0J#)9:K5;W MTV\6E_]H-@=YRO-8).S-Z.UO+%%Q.16Y9;$6W&)T+FW*1JHH>,[>"JUEEK%7 M6B83P=CS5N>BU6X]?])L7EV"5;]:H_*0=3I!-SAOGY_C6]AY''8OV(>W[/33 MJ'_FJ*_?]T?_^3#PNW[X].JW89^=-(/@]VX_"*Y'UWX"[#MLI'ENI)4JYUD0 M#-Z=L)/4VB(,@OE\WIIW6TI/@M%-D-II=A%D2AG12FQRM*H( MN^W"]K RP/06S5US+A.;AIUV^Z=>P9-$YI-F)L86(ZWSY^LQ+2?I>E#YPX5: M9-S*F2#N-;YQ)K@.(V73WO86]ZTLENO&*K?-,9_*;!'^,I)38=@[,6=ZSXLXV>28GV(U&>UXE(8@9 M_>^<^R\D0K0APMQSB5268')PE\I(VI\?=9ZT>UVPO@PB*+/X*P2/ 6RA=R3O M["?YQT%_-'S_KI*\?<[Z@YO1\/6P_Y*&V?O7K/]F.'C-!O\>]#^-AO\:8 BS M@YMO?<*'SS-LL%$*IH9=M\AK323S!HN%MG*\8#;E-OR6@FVX0/<)2)PQ9)[ M$&'3C3PL?*?E5?WG/X]7K/5V?@"]O>+&Q7$V7;#;7,TS@8#? M\(JKU)4H'#)7R!0X#9L3&/,:29FDK+ MK/)T.P2YB(4Q7"^(9,IO!?:M\3082R ,MLQ(9[0'$<12(W>!#-G,0))$:#9/ M99PR4]+'>OU<:%$QH0-,I4&()8W[;*>%*43L!"2^!413"8XYP[*$18NZ&HX8 M!]V#^<^#:!!L+'/HFTRWUF\#4 YIG5M7N9C>!>G?(7O<58FX D;UI39@/TE M>60!$Q!Z"%6H-U;PJ"QCMK8& A.7"!M$468@ "84#.>V,TZ>F)N4C3,U-TO M:#&1QJ*XL(S3H)<;4C9J=C=+87:D/6+37QS,]*,-/?W\Z-EYYVG/5,:M$@DY MCAJ/)1Y/S9E3XI!Q+9RYH'X998+4R@0P$F72I+2"R*:(&Q0[Z#F1)LZ4*;&. M(HI6F;=;H16J4PP;=@HS)0)V][88W*&U&.2KZ%A]RKLK\W6J.(534K$%LAB5"83U^N8,C(RD5Q+.H#TR@ZWJ$ A(N,RXQ3Z<"PGQ#KQ8(5/8_7LBV^1 M($)$)ZP7R5%&HPI2T0$@M0FFO;UX!U/[^__>T (<9S(AQ'"#'I6B'3= &Q4B M!".NDZ5) 3+)(YE)NZ L=-^V!'!G?6=8C\T-TEHAXX+J776@HM1H"&%HRIIQ MK'3B!' ES43D2(89\(4941!PB03EFL<0 "X+A+1C1E%\L, TF/&L=-Y+BA;C M,6H*=,\YJL[=VF"5\_:(1O[Q_G+!00<+$4F,+THB5=J')=@G7O(5M:"*:_SE M>I5%RUK.>8/PFH \/6)^Q-9/#A%#O$IW34.M2Y7=WI,A;C]&H"O$P,1E5GRDX?6#(&DN#36]25X"ASA>NZJ"'+RY5<9UZJ ME)M5^J-HX) G$A %F*2H9B'OU1Q+?U!_%%*B.^P7^:Q:];._A[%\4OTM5192-B=6@/J M-&(I8*4JCZR*U+G@MY08?&9WJ<'5).Y%RK+'_2K;5_6D;]'N<7B>8*$1*W]_ M$"=5)8,E,#8*CH;/3@:IR913Z!&&<(>IXNR];P..-A8N[E4V7FAH_/,I^I;"8H2.=\4KU#TU6\$-,B4PN!V7FJ?(3@&R""T0^2 MP5K?YW7U-701LG>0:AH)[377;3"Z17("N1L7ZPKL2K((H!.Z&:LLXX41X?)+ M70BR8K4_W9_0V:'52@P/"EY:M1SP=S-N9 ,X).+F_0V-U&YC3IB[97AQXJ\9 MZ'))+^5MBXZ/]5TM=P[K&XJ:A=$->9D M4'K'%:8R ;I7S\VYYD48P=MOFW/H[(N73JMY'J'7+:WHT=W7]HG_ HS0)D2] MTACZ+A]VEF<\N2* M[OH78CP4%G>];J?$^ >V'\QCLG_<() ZO)N0_CR-_" M@\Z?;E\_;R<]-[(=B=?WH'6/>\ +FC4-[NF4AT+^-U+9@^IXM0CWD/\^>%?Y MJ5)5I[AC[LTA>]1V_X[HC($)V(;9':<92CA4$*&9HOUKQDBM(!V]>?_VY4=W MI7PS_/AJ^&['QC\O4_4$L#!!0 ( M -*:8U42?P="#0D +PU 8 =VQD;BTR,#(R,#DS,'AE>#,Q9#(N:'1M M[5MM4]LZ%OXKVG1Z"S-QG!=HBT.9H2'<9K8%EDWWSOTHVW*L0;9\)3DA^^OW M',G."PDM;2\LM#!#8DM'TI'\/.=%5@[_X7G#/*5YQ&+R8?SI(XEE5&8L-R12 MC!HHG7&3DK$L"IJ33TPI+@1YKW@\880N?A$=CZ/![M6^N1\,/[S8NA&O?C\_N-H0!J>[__1&_C^ MR?C$54#W'3)6--?<<)E3X?O#LP9II,84@>_/9K/6K->2:N*/+_W49&+/%U)J MUHI-W#@ZQ!+X9#0^.LR8H21*J=+,O&M\'I]Z;T'"<"/8T:%??SO94,;SH\.8 M3XDV<\'>-3*J)CSWC"R"7KLP?6CI0_4-F6MOQF.3!IUV^V6_H'',\XDG6&*@ MI-7;7Y8I/DF7A=)-+E!,4,.G#'M?Z3<2C*H@E";MWQQB6\NB;I?(W'@)S;B8 M!Z_&/&.:G+$9N909S5\U70E\:Z9X\JIOI37_+X.N88*"Y\Q+F=.SU3GH&W9M M/"KX!$;#TKY;D@"$"?YWNNX"50C75)BY7D(I8J@<7J<\Y.:W%YW7[7ZOT^H> M^B$L9O$0BD< ;*:^5_-_#P?CT?E9I7F[2P;#R_'H=#0XQF)R?DH&'T;#4W(Z M.CL^&XR./T(1U XO[WN&M\]GU"3 2924.?EGBPRI$O,FB9@R/)D3DU(36,T, M#04CH50Q4^\:[0:("%&A=7&O"QI5]]!"P7]<3VB*/4945 MMUQS(TI^EW# / M&[(@ES-%HOXA,R!]@L6,P MWK\K619-5S?*HU9_.6,?'Z9O,? ,A>XCA\)[JJV+)=F<7,%""@:^N.D04>$@ MEJ!&+L&)PWB4YX3FR_8PI5G6"$\BX!N^'*^\"$<5TP2*K(/9;@&HRAFD"Z&!1POGJ,CP#?#N M>D\5X(PD/ <((1J7D&D"ND$ZYH!B M$ZX-A+*&4"QT>H.6S14HZUJ9#6V?T;P=+7N/',WCM4?_VXNWWT\'@?&@6"@)Z1T4:[(#R(L90-G!:W@-^5 .F=PQF-3+4C!=A0X]ZG7V=YA3 MI;,?NSMWRS&&SAT/%'@ZNJ-"WC9:LC9; :#CCF\P!"8R$@GMBP^T0 MOP&PITX;NONX:7/"-*PK ,<&"%^'=A-CEXB6^NY-,(@(&2"T&LF%);)4T %8 MXRG7UL:#%,MM/Y@N+;W#JH=Q^3= OHI+EHAM5MX'*SEX"M!%2\%CNT^BRU#S MF%/%<0+<14_6Y^784ZDQHK&60MOPQWH$J1DH9, #8:."(@Y+@8D=@6E9)9:1 M$;1P<=9J> A7(4-!\#70GL7WY5M^&3:%3XI-=[;@&Z2ZN^V_,[> CU,>(V6H MEKD%'-5 -TP5D$=4Q36F@66@:MNPR' +?XML1\XUT954PSK4ZVI" M1:D*8):V06 4 >2M C;IF+ <8CL!!(,:5B!S4002*D&IU]OB)*=6YHD0"6PYS>D M*\4A8V=V3PRWR_)RH=>NTRJE>A'[H2>PU&.Q=9%V/2KW-2>"7S%1;9#=D&_^ M\!+=)]V>.HOV?]:M +OW']<<;"YM,;J&51XLS3(B^1OBO(V\9:$=A=S%2*47 MH94M@"ZSC!O#V!<<7R@A>,/ZF(-^MI,=8 OX&8U^#+XQ@ZHISOXJ.:AOZ5SF MD=U*VWW.\W_R//]80$P.*\L!\KC!@_M%$6< T"HL6N3;,T:O,,YQ,;J-=&QV M85]:U)NOWP3[*C5V&VU;S#>-H:%F"^M]*T6JG 2: ,X!DTT7;&F(M'29P9QA MC>QD*J^Y=9OZ.9#Z!1+Q8XB7$@4FM G@8];P WSMFZX*YTT7;O!\*L648]I($U=D>+'$,.3AH'?1>]BTGZW'K23L\WDX_6=-L[TUK M;__ER@+=Y-S*"JQTCL\57T(%*8]CEB_N/61P$(+5N_)FL 9?/8.TJ*>AEJ(T MK%]C>N4XTGU3JYXK2J^-XUI")>XK.6-[_P7D;H#\KN#]>P#[$/-] M/P^^2>4*B955KAUI<4WL*Q/RHFW__L^3\K5/-DW0%((\<+&!SB#=]R)P(B Z MN!R.?O\P/C^S9^^.+S_^N?$@GS'\R#'\H/-=)P":P<>&_LWCI,]8?L;R=X45 M#S)COAXHXG7 #>@:(9A3SA)RNLA[SMW&FTW5_P-7Y$(QS6$ES*'/?QJCO;D2 MOQKT'WX%G@ 9=B[U;^U/;.!#^5W3I] HS M\2NA/)R4&0AIRUQY%,)U^J-LR[&FMN5*"B'WU]]*LA,G*07:4J"$&2#1F4?EOO(\YRVTW);+?CD>Z_]]@8Z/4)K%X/> MNFY]<-(;?#[MFUE/+_8_'/90PW*<3^V>XQP,#DP%#.^A <>YH)*R'*>.TS]N MH$8B9>$[SG@\ML=MF_&A,SAS$IFE&T[*F"!V)*/&;E>5P%^"H]UN1B1&88*Y M(/)-XV+PUMJ&%I+*E.QVG>J_:1NP:++;C>@E$G*2DC>-#/,AS2W)"K_M%K(# M/1VH7FAS98UI)!/?<]V7G0)'$^[7;?$@#W&GIL$![$2L4P^LZ*8VV.D:O'7=3F4DF!)UC'N"< M".OD*B43M!=*5=-RW=9O49CF$2CKMS>+[T'U,$.94=)SK8]*ET_@"R-PB^\X&Q5-4W>8AS9:4V/\_6*[U7([ M/9:!ZYSH;UYG'<6,ZRF^3JKT7K4ZC-2#LE;(DW;Z>]T5$$FMG%4>!P-*96T+H]M%I/ %HTATT@ M,S$%[#X2PT 1E&J45+C#5.\-G @%L::JQA!Z0S<0!EPH5!2 .='4O>*I:X4! M(QT4:G\,K4:I02B#?4;/*1;,PD-I M%!6M*OU @*QC&@WY2LYJ M4\%[6 \,%Q-3"\=K@# :,4S;V$QI!M#'];BF"^ &OEJO6$REM*:4YLY=_O^[T9,NR-S2< C!]2;=OVG@+HEW337FI^@_MQ M9M\'=%M;BZ=_:%(_E5BZ9/%8,CN%U:%^PS;CW@'_OPCS]V2R:\VQ/_'O)K\! M=KE;5=MQ<84 9C1"+US]\X@4=(2#EMW;)8:-'L B,MCXK1 V6A4_O#\YVCM' MZHAV=GB^?WB\M, K=CPO=CRT.>;(ICSX8V::N>9 LQN.%6]6O'E(WCPB>]#Y MX%I]]JD$N4-U$_[M2\"N0^_O!/#CTJZ=<@K'X0+.PTLBKT]E7M%^1?MG3_MC M.+^IYPWE SGSS.%/IL>-&/C3"/#;%7YPB/]2C?\\!CPRC_C0_'B.MPV]L_[A MN_>#DV/]G';O[,/G%>"?*^ ?VAQ/Z@)A.<%A19P5<59'B=O>("SG *G'U/_" M)W3*B: *AH__4F%)B]6EPLH3K#S!TJ4"^O9]0I5A8I[I/K.DACMDIPY4LF$X MEX.,PU!G[:@LLEJZT$]E.FH7+!*57I0SV43D*B2%K!(?05SU/D"9\!:A8')C MXF1 4$1(!HU-WFK9IP3-U:T$^UB4<\IR*9#7";E%V.J!1*TCA&HP)*E*A$2'LI?269YCH% M./PRY&R41RHOBW&_BIEKKPW,5Y1@;"V LXJRYUY8F,O2FB^;O@M1X"&Q3-X' MCB7A/KYD-"I=T]:.WMW*Z-Z4N3JKP[QCH5_:V/T?4$L! A0#% @ TIIC M5=SZ+CH^%@ H^X !$ ( ! '=L9&XM,C R,C Y,S N M>'-D4$L! A0#% @ TIIC59#@[?6P$P ZRL! !4 ( ! M;18 '=L9&XM,C R,C Y,S!?8V%L+GAM;%!+ 0(4 Q0 ( -*:8U5FQTK_ M #0 %D1 P 5 " 5 J !W;&1N+3(P,C(P.3,P7V1E9BYX M;6Q02P$"% ,4 " #2FF-55?)Z"5)Y !TUP< %0 @ &# M7@ =VQD;BTR,#(R,#DS,%]L86(N>&UL4$L! A0#% @ TIIC53J,? B\ M5 #$P<2YH=&U02P$"% ,4 " #2FF-59G*9KAPQ M "9-0( & @ 'W"@0 =VQD;BTR,#(R,#DS,'AE>#$P9#$N M:'1M4$L! A0#% @ TIIC53@X%6O4" $RL !@ ( ! M23P$ '=L9&XM,C R,C Y,S!X97@S,60Q+FAT;5!+ 0(4 Q0 ( -*:8U42 M?P="#0D +PU 8 " 5-%! !W;&1N+3(P,C(P.3,P>&5X M,S%D,BYH=&U02P$"% ,4 " #2FF-5&J&06#0' "(,@ & M @ &63@0 =VQD;BTR,#(R,#DS,'AE>#,R9#$N:'1M4$L%!@ * H *I@( !6! $! end